EdColeman commented on code in PR #3160:
URL: https://github.com/apache/accumulo/pull/3160#discussion_r1099314206
##########
server/manager/src/main/java/org/apache/accumulo/manager/upgrade/UpgradeCoordinator.java:
##########
@@ -142,11 +145,17 @@ public synchronized void upgradeZookeeper(ServerContext
context,
"Not currently in a suitable state to do zookeeper upgrade %s",
status);
try {
- int cv = context.getServerDirs()
- .getAccumuloPersistentVersion(context.getVolumeManager().getFirst());
- ServerContext.ensureDataVersionCompatible(cv);
+ int cv = AccumuloDataVersion.getCurrentVersion(context);
this.currentVersion = cv;
+ int oldestVersion = upgraders.entrySet().iterator().next().getKey();
+ if (cv < oldestVersion) {
+ String oldRelease = dataVersionToReleaseName(oldestVersion);
+ throw new UnsupportedOperationException("Upgrading from a version less
than " + oldRelease
+ + " data version (" + oldestVersion + ") is not supported. Upgrade
to at least "
+ + oldRelease + " before upgrading to " + Constants.VERSION);
+ }
+
Review Comment:
a5da59abc76 removes the test and leaves the message alone.
The improvement that I was shooting for would provide guidance in the manage
log when the upgrade fails. The upgrade is using data version and while that
is tied to release version, that connection is buried in our code. Users may
not be familiar with "data version", where it is set / coming from and how that
even relates to a release.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]