ctubbsii commented on issue #5572:
URL: https://github.com/apache/accumulo/issues/5572#issuecomment-2903245838

   > I don't know that we have combined upgraders before. We typically drop 
them when we no longer support upgrades from the specific release. Code reuse 
could be achieved via other means, like a common base class in the hierarchy.
   
   I think there is a misunderstanding.
   
   Formerly, we had:
   
   | Accumulo Version(s) | Data Version |
   | -------- | ------- |
   | 2.1, 3.0 | 11 |
   | 3.1 | 12 |
   | 4.0 | 13 |
   
   Now, we will have:
   
   | Accumulo Version(s) | Data Version |
   | -------- | ------- |
   | 2.1, 3.0, 3.1(for deprecations) | 11 |
   | 4.0 | 13 |
   
   There is no need to go from 11 to 13 in two steps. We can collapse their 
behavior and remove the Upgrader12to13, and put its functionality into 
Upgrader11to12:
   
   | Accumulo Version(s) | Data Version |
   | -------- | ------- |
   | 2.1, 3.0, 3.1(for deprecations) | 11 |
   | 4.0 | 12 |
   
   Alternatively, we can keep data version 13 for 4.0, and keep data version 12 
unused. If we did that, we could replace the two upgraders with a single 
Upgrader11to13 class (alternatively, just move all the code from one to the 
other, and leave the other in place, but as a NOOP).
   
   The point is, it is confusing to have upgrade code spread across two classes 
and two data versions when the intermediate data version is unused and this is 
only a single data version bump to upgrade from (2.1, 3.0, 3.1) to 4.0.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@accumulo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to