Skip to content

Optimize MongoReadJournal pipelines and bump dependency versions#2355

Open
thjaeckle wants to merge 1 commit intoeclipse-ditto:masterfrom
beyonnex-io:refactor/mongo-read-journal-optimizations
Open

Optimize MongoReadJournal pipelines and bump dependency versions#2355
thjaeckle wants to merge 1 commit intoeclipse-ditto:masterfrom
beyonnex-io:refactor/mongo-read-journal-optimizations

Conversation

@thjaeckle
Copy link
Member

  • Extract inline BsonDocument.parse() calls into static final constants (FILTER_PRIORITY_TAGS_EXPR, DOCDB_MAP_PRIORITY_TAGS_EXPR) to avoid re-parsing on every ping interval
  • Add $project stages before $sort/$group to reduce document size in memory
  • Replace recursive $redact with targeted $addFields/$filter on the items array in listNewestActiveSnapshotsByBatch; skip stage entirely when includeDeleted=true
  • Enable snapshot aggregation index (pid+sn+id) by default for MongoDB 6+
  • Update pekko-persistence-mongodb 1.3.1 -> 1.4.0
  • Update mongo-java-driver 5.6.0 -> 5.6.4
  • Update netty 4.2.4.Final -> 4.2.10.Final
  • Fix IndexInitializationIT to match activated index configuration

- Extract inline BsonDocument.parse() calls into static final constants
  (FILTER_PRIORITY_TAGS_EXPR, DOCDB_MAP_PRIORITY_TAGS_EXPR) to avoid
  re-parsing on every ping interval
- Add $project stages before $sort/$group to reduce document size in memory
- Replace recursive $redact with targeted $addFields/$filter on the items
  array in listNewestActiveSnapshotsByBatch; skip stage entirely when
  includeDeleted=true
- Enable snapshot aggregation index (pid+sn+id) by default for MongoDB 6+
- Update pekko-persistence-mongodb 1.3.1 -> 1.4.0
- Update mongo-java-driver 5.6.0 -> 5.6.4
- Update netty 4.2.4.Final -> 4.2.10.Final
- Fix IndexInitializationIT to match activated index configuration

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@thjaeckle thjaeckle added this to the 3.9.0 milestone Feb 26, 2026
@thjaeckle thjaeckle self-assigned this Feb 26, 2026
@thjaeckle thjaeckle moved this to Waiting for Approval in Ditto Planning Feb 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Waiting for Approval

Development

Successfully merging this pull request may close these issues.

1 participant