Istvan Toth created PHOENIX-6870: ------------------------------------ Summary: Add cluster-wide metadata upgrade block Key: PHOENIX-6870 URL: https://issues.apache.org/jira/browse/PHOENIX-6870 Project: Phoenix Issue Type: Improvement Components: core Reporter: Istvan Toth
Upgrade-related bugs are common in Phoenix, which failed or incomplete upgrades. A common way to fix these is to simply fix the bug, and update Phoenix, which usually lets the upgrade finish correctly. However, due to the distributed nature of Phoenix, it is very difficult to ensure that every buggy phoenix client is updated. We want to ensure that the fixed client is able to run the upgrade, without the buggy clients interfering. In theory, we could disable automatic upgrade for all old clients, but we sun into the same problem as upgrading the clients, where some clients may be using configurationsĀ (i.e. hbase-site.xml) that are not easily upgraded. As a workaround, we could add an additional way to block auto upgrades globally (for example by adding a record to system.mutex) , as well as an override property for this. This way, when we run into an upgradebug, we could set the global upgrade lock, start a single phoenix client which fixes the problem, then execute the upgrade command manually. Of course, this would only work forĀ future upgrades, if the old client doesn't have this feature, then it doesn't work. -- This message was sent by Atlassian Jira (v8.20.10#820010)