Phoenix submits a report to the ASF board once a quarter, to inform the board about project health. I'm sending the report to the user@ and dev@ mailing lists because you are the project, and for transparency. If you have any questions about the report or the running of the project, you can post them to any PMC member or committer, or send an email to priv...@phoenix.apache.org, which every PMC member subscribes to.
## Description: The mission of Phoenix is the creation and maintenance of software related to High performance relational database layer over Apache HBase for low latency applications ## Project Status: Current project status: Ongoing Issues for the board: No issues to report to the board at this time. ## Membership Data: Apache Phoenix was founded 2014-05-21 (11 years ago) There are currently 61 committers and 38 PMC members in this project. The Committer-to-PMC ratio is roughly 8:5. Community changes, past quarter: - No new PMC members. Last addition was Jacob Isaac on 2023-11-07. - Nihal Jain was added as committer on 2025-08-05 ## Project Activity: Development activity was average, feature development concentrated on improving CDC (Change Data Capture), TTL (Time to Live) and BSON support. Phoenix 5.3.0 is now considered feature complete, and we plan to release it in the next quarter. Phoenix 5.2.2 is still delayed due to lack of manpower to coordinate the release. Notable changes and new features in the quarter: Dependency version updates: PHOENIX-7683 Bump Apache Commons Lang 3 to 3.18.0 due to CVE-2025-48924 PHOENIX-7681 Update HBase 2.5 profile default version to 2.5.12 PHOENIX-7668 Update HBase 2.6 profile default version to 2.6.3 PHOENIX-7606 Remove HBase 2.4 support from master branch PHOENIX-7600 Replace commons-logging with slf4j HBase API usage updates in preparation for HBase 3.0: PHOENIX-7476 HBase 3 compatibility changes for Filters, ByteStringer, and Paging PHOENIX-7478 HBase 3 compatibility changes: Replace ClusterConnection with Connection API PHOENIX-7481 HBase 3 compatibility changes: Cleanup deprecated APIs, HTable and HTableDescriptor PHOENIX-7505 HBase 3 compatibility changes: Update zookeeper handling Reformatting the codebase with Spotless: PHOENIX-7676 Update checkstyle checker.xml based on spotless rules PHOENIX-7443 Add Spotless to the pre-commit checks PHOENIX-7442 Apply Spotless to reformat the entire codebase PHOENIX-7675 Update spotless plugin to also format IT classes PHOENIX-7441 Integrate the Spotless plugin and update the code template CDC Feature related: PHOENIX-7677 TTL_DELETE CDC event to use batch mutation PHOENIX-7671 Fix CDCStreamIT for HBase 2.6 PHOENIX-7664 Remove EmptyColumnOnlyFilter and FirstKeyOnlyFilter for CDC scanners PHOENIX-7658 CDC event for TTL_DELETE to exclude pre-image if PRE scope is not selected PHOENIX-7584 Conditional TTL on SYSTEM.CDC_STREAM PHOENIX-7653 New CDC Event for TTL expired rows PHOENIX-7652 : Clear CDC Stream metadata when table is dropped PHOENIX-7643 : Add parent partition start time to CDC_STREAM table PHOENIX-7636 CDC on table with case-sensitive pk columns fails to read change records PHOENIX-7634 : Change stream name delimiter PHOENIX-7609 : CDC creation fails when data table has case sensitive name TTL feature related: PHOENIX-7677 TTL_DELETE CDC event to use batch mutation PHOENIX-7661 Clean up old framework for TTL masking and expiration PHOENIX-7674 Fix Bson3IT for HBase 2.6 PHOENIX-7667 Strict vs Relaxed TTL BSON feature related: PHOENIX-7551 BSON_VALUE_TYPE function to return the data type of BSON field value PHOENIX-7673 BSON Condition Function size() PHOENIX-7663 : BSON Condition Function field_type() PHOENIX-7674 Fix Bson3IT for HBase 2.6 PHOENIX-7662 BSON Condition Function contains() PHOENIX-7545 BSON_VALUE() to support returning sub-document PHOENIX-7585 New BSON Condition Function begins_with() PHOENIX-7654 Restrict BSON datatype in composite PK as last part of the pk column PHOENIX-7650 Default value support in BSON_VALUE() for all supported types PHOENIX-7647 : BSON_UPDATE_EXPRESSION() set value if field key does not exist PHOENIX-7641 Support placeholder for document field keys in BSON condition expression PHOENIX-7631 BSON_VALUE() to support returning binary value with VARBINARY_ENCODED data type PHOENIX-7617 BSON serialization should retain ByteBuffer offset Other notable changes: PHOENIX-7659: Leverage = ANY() instead of big IN list to do huge number of point lookups in a single query PHOENIX-7612 Fix Cell references in IndexRegionObserver PHOENIX-7666 Index query failure with SkipScanFilter PHOENIX-7671 Sync maxLookback from data table to indexes PHOENIX-7626: Add metrics to capture HTable thread pool utilization and contention PHOENIX-7648 Introduce new Atomic Operation - ON DUPLICATE KEY UPDATE_ONLY PHOENIX-7645 HighAvailabilityGroup can leak zookeeper connections PHOENIX-7646 New PhoenixStatement API to return old row state in Atomic Updates PHOENIX-7630: Return ResultSet for UPSERT with ON DUPLICATE KEY PHOENIX-7639 Improve error handling in PhoenixMasterObserver PHOENIX-7619 Excess HFiles are being read to look for more than required column versions PHOENIX-7627 Atomic Delete return row fails for case-sensitive schema and table names PHOENIX-7358 Upsert select result wrong when use order by in query PHOENIX-7615: Fix NPE in handling NULL value PHOENIX-7616 NPE when there are Conditional expressions on indexed columns PHOENIX-7599: Fix count of rows scanned metric for uncovered indexes PHOENIX-7610 Using CAST() on pk columns always result in full table scan PHOENIX-7614 : Fix atmoic update return result with case sensitive table name PHOENIX-7605 Adding ability to configure threadpool at CQSI level PHOENIX-7608 : Partial index creation fails when creating it on a table with case sensitive table name PHOENIX-7586 :- Handle Role transitions for ActiveToStanby role in Failover HAPolicy ## Community Health: Overall community health is good. Most of the development is still done by our core team of about a dozen active developers.