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)