Phoenix JDBC driver and SYSTEM.CATALOG compatibility after interrupted upgrade migration
0 reputation · 04 Sept 2024, 18:15 UTC
0 reputation · 04 Sept 2024, 18:15 UTC
When upgrading Apache Phoenix, the migration of the SYSTEM.CATALOG tables in HBase typically runs on the first connection from a newer JDBC client, modifying internal metadata structures. If that upgrade is interrupted or fails, the catalog may be left in an intermediate state that the previous version cannot interpret.
The core uncertainty sits at the integration boundary between the client-side JDBC driver and the HBase-stored metadata. Because Phoenix does not generally guarantee that upgraded catalog metadata remains readable by older clients, simply reverting the driver JAR may not restore service once the SYSTEM.* tables have been touched. Recovery planning therefore needs to account for catalog version, client driver, and region server coprocessor JARs as one aligned unit, with HBase snapshots of the SYSTEM.* tables taken beforehand as the likely rollback mechanism. Exact guarantees vary by version, and cross-major jumps such as 4.x to 5.x also change the required HBase version, so the specific release notes for the versions in use should be consulted.
A thoughtful contribution can make all the difference. Be the first to share one.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.