nsivabalan commented on code in PR #13519:
URL: https://github.com/apache/hudi/pull/13519#discussion_r2274928454


##########
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/upgrade/UpgradeDowngrade.java:
##########
@@ -164,17 +167,20 @@ public void run(HoodieTableVersion toVersion, String 
instantTime) {
       // upgrade
       while (fromVersion.versionCode() < toVersion.versionCode()) {
         HoodieTableVersion nextVersion = 
HoodieTableVersion.fromVersionCode(fromVersion.versionCode() + 1);
-        tablePropsToAdd.putAll(upgrade(fromVersion, nextVersion, instantTime));
+        UpgradeDowngrade.TableConfigChangeSet tableConfigChangeSet =
+            upgrade(fromVersion, nextVersion, instantTime);
+        tablePropsToAdd.putAll(tableConfigChangeSet.getPropertiesToUpdate());
+        
tablePropsToRemove.addAll(tableConfigChangeSet.getPropertiesToDelete());
         fromVersion = nextVersion;
       }
     } else {
       // downgrade
       isDowngrade = true;
       while (fromVersion.versionCode() > toVersion.versionCode()) {
         HoodieTableVersion prevVersion = 
HoodieTableVersion.fromVersionCode(fromVersion.versionCode() - 1);
-        Pair<Map<ConfigProperty, String>, List<ConfigProperty>> 
tablePropsToAddAndRemove = downgrade(fromVersion, prevVersion, instantTime);
-        tablePropsToAdd.putAll(tablePropsToAddAndRemove.getLeft());
-        tablePropsToRemove.addAll(tablePropsToAddAndRemove.getRight());
+        UpgradeDowngrade.TableConfigChangeSet tableConfigChangeSet = 
downgrade(fromVersion, prevVersion, instantTime);
+        tablePropsToAdd.putAll(tableConfigChangeSet.getPropertiesToUpdate());
+        
tablePropsToRemove.addAll(tableConfigChangeSet.getPropertiesToDelete());

Review Comment:
   its ok to keep it simple. we do one version upgrade at a time. so that if 
table is always left in some sane state. 
   say if user wishes to upgrade from 6 to 9. 
   after upgrading to 8, say there are some issues, atleast we leave the table 
in usable state w/ version 8. 
   
   So, I suggest to keep this as is for now 



-- 
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]

Reply via email to