These release notes cover new developer and user-facing incompatibilities, important issues, features, and major improvements.
Adds mapreduce configuration param “phoenix.mapreduce.external.snapshot.restore” which when set to true indicates that snapshot-based MapReduce jobs shouldn't try to restore the snapshot themselves, but assume an external application has already done so.
The phoenix-client and phoenix-server JARs have been renamed to include the supported HBase version.
Instead of phoenix-client-<phoenix.version>.jar, the client is now phoenix-client-hbase-<hbase-major.minor>-<phoenix.version>.jar I.e. The Phoenix 4.16 client for Hbase 1.5 is now called phoenix-client-hbase-1.5-5.1.0.jar
The maven coordinates also have also changed to “org.apache.phoenix:phoenix-client-hbase-<hbase-major.minor>:<phoenix.version>”. I.e the Phoenix 4.15.0 client for Hbase 1.5 is “org.apache.phoenix:phoenix-client:4.15.0-HBase-1.5”, but the phoenix client for Phoenix 4.16 is “org.apache.phoenix:phoenix-client-hbase-1.5:4.16.0”
New API for Explain plan queries that can be used for comparison of individual plan attributes.
We no longer have generated protobuf Java files available in source code. These files are expected to be generated inline with mvn build. We have also used an optimization with the plugin to ensure protoc is not invoked with mvn build if no .proto file is updated between two consecutive builds.
While upgrading System tables, all system tables where we perform some significant DDL operations, we start taking snapshots of them:
If the upgrade doesn't complete successfully, we should get warning log providing all snapshots taken so far, which can be used to restore some snapshots if required.
A sample Warning log:
Failed upgrading System tables. Snapshots for system tables created so far: {SYSTEM:STATS=SNAPSHOT_SYSTEM.STATS_4.15.x_TO_4.16.0_20201202114411, SYSTEM:CATALOG=SNAPSHOT_SYSTEM.CATALOG_4.15.x_TO_4.16.0_20201202114258, SYSTEM:CHILD_LINK=SNAPSHOT_SYSTEM.CHILD_LINK_4.15.x_TO_4.16.0_20201202114405, SYSTEM:SEQUENCE=SNAPSHOT_SYSTEM.SEQUENCE_4.15.x_TO_4.16.0_20201202114407, SYSTEM:TASK=SNAPSHOT_SYSTEM.TASK_4.15.x_TO_4.16.0_20201202114413}
WARNING: No release note provided for this change.
A new coprocessor endpoint to avoid direct upserts into SYSTEM.TASK from the client.
Introduces a new field in System.Catalog, LAST_DDL_TIMESTAMP, which is the epoch timestamp at which a table or view is created, or last had a column added or dropped. Child views inherit the max ddl timestamp of their ancestors.
We have new split policy introduced for SYSTEM.TASK which for now is just extending DisabledRegionSplitPolicy. As part of an upgrade to 4.16/5.1, updating split policy will be taken care of unless it was already updated manually.
Hence, before 4.16/5.1 upgrade, if operator has already manually updated split policy of SYSTEM.TASK, an exception will be thrown during upgrade to 4.16/5.1 which would mandate an operator intervention to perform:
WARNING: No release note provided for this change.
WARNING: No release note provided for this change.