Skip to content

[#2140] Widen MessageDatabase index-update points for subclasses - #2550

Open
mattrpav wants to merge 1 commit into
apache:mainfrom
mattrpav:amq-2241-kahadb-extensibility
Open

[#2140] Widen MessageDatabase index-update points for subclasses#2550
mattrpav wants to merge 1 commit into
apache:mainfrom
mattrpav:amq-2241-kahadb-extensibility

Conversation

@mattrpav

@mattrpav mattrpav commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

This change opens the possibility to extend KahaDB for performance improvements. Making architecture changes to KahaDB directly is considered risky, as KahaDB is very stable.

By supporting a subclassed KahaDB, developers and users may gradually rollout new KahaDB features and capabilities. Specifically, this relates to improving KahaDB throughput by being able to leverage modern JDK capabilities -- specifically Virtual Threads and aio.

…classes

Continues apache#2140: updateIndex overloads (add, update, remove,
remove-destination, subscription) and recordAckMessageReferenceLocation
become protected, the TransactionIdConversion helpers become public,
and Metadata gains lastUpdate accessors (nested-class fields are not
reachable from a cross-package subclass of the outer class) so a
KahaDBStore subclass supplied via createStore() can observe and apply
index updates without copying store code. Visibility-only; no behavior
change. The new javadoc on recordAckMessageReferenceLocation documents
the existing index-lock guard on the ackMessageFileMap for subclass
callers.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

1 participant