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.

Reply via email to