Skip to content

Optimize oplog size by stripping locations of large objects#2711

Closed
delthas wants to merge 3 commits intodevelopment/9.2from
improvement/BB-491/strip-oplog-location
Closed

Optimize oplog size by stripping locations of large objects#2711
delthas wants to merge 3 commits intodevelopment/9.2from
improvement/BB-491/strip-oplog-location

Conversation

@delthas
Copy link
Contributor

@delthas delthas commented Feb 3, 2026

Issue: BB-491

@bert-e
Copy link
Contributor

bert-e commented Feb 3, 2026

Hello delthas,

My role is to assist you with the merge of this
pull request. Please type @bert-e help to get information
on this process, or consult the user documentation.

Available options
name description privileged authored
/after_pull_request Wait for the given pull request id to be merged before continuing with the current one.
/bypass_author_approval Bypass the pull request author's approval
/bypass_build_status Bypass the build and test status
/bypass_commit_size Bypass the check on the size of the changeset TBA
/bypass_incompatible_branch Bypass the check on the source branch prefix
/bypass_jira_check Bypass the Jira issue check
/bypass_peer_approval Bypass the pull request peers' approval
/bypass_leader_approval Bypass the pull request leaders' approval
/approve Instruct Bert-E that the author has approved the pull request. ✍️
/create_pull_requests Allow the creation of integration pull requests.
/create_integration_branches Allow the creation of integration branches.
/no_octopus Prevent Wall-E from doing any octopus merge and use multiple consecutive merge instead
/unanimity Change review acceptance criteria from one reviewer at least to all reviewers
/wait Instruct Bert-E not to run until further notice.
Available commands
name description privileged
/help Print Bert-E's manual in the pull request.
/status Print Bert-E's current status in the pull request TBA
/clear Remove all comments from Bert-E from the history TBA
/retry Re-start a fresh build TBA
/build Re-start a fresh build TBA
/force_reset Delete integration branches & pull requests, and restart merge process from the beginning.
/reset Try to remove integration branches unless there are commits on them which do not appear on the source branch.

Status report is not available.

@bert-e
Copy link
Contributor

bert-e commented Feb 3, 2026

Waiting for approval

The following approvals are needed before I can proceed with the merge:

  • the author

  • 2 peers

@codecov
Copy link

codecov bot commented Feb 3, 2026

Codecov Report

❌ Patch coverage is 95.55556% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 74.38%. Comparing base (20b5374) to head (f1018c1).

Files with missing lines Patch % Lines
extensions/replication/tasks/ReplicateObject.js 87.50% 2 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

Files with missing lines Coverage Δ
extensions/oplogPopulator/OplogPopulator.js 89.14% <100.00%> (ø)
...ns/oplogPopulator/OplogPopulatorConfigValidator.js 100.00% <ø> (ø)
extensions/oplogPopulator/modules/Connector.js 86.40% <100.00%> (+1.30%) ⬆️
...nsions/oplogPopulator/modules/ConnectorsManager.js 94.07% <100.00%> (ø)
...pulator/pipeline/MultipleBucketsPipelineFactory.js 100.00% <100.00%> (ø)
...ensions/oplogPopulator/pipeline/PipelineFactory.js 100.00% <100.00%> (ø)
...oplogPopulator/pipeline/WildcardPipelineFactory.js 100.00% <100.00%> (ø)
extensions/replication/tasks/ReplicateObject.js 91.20% <87.50%> (-0.14%) ⬇️

... and 5 files with indirect coverage changes

Components Coverage Δ
Bucket Notification 80.22% <ø> (ø)
Core Library 80.53% <ø> (-0.49%) ⬇️
Ingestion 71.14% <ø> (+0.52%) ⬆️
Lifecycle 78.62% <ø> (ø)
Oplog Populator 85.59% <100.00%> (+0.52%) ⬆️
Replication 59.61% <87.50%> (+0.05%) ⬆️
Bucket Scanner 85.76% <ø> (ø)
@@                 Coverage Diff                 @@
##           development/9.2    #2711      +/-   ##
===================================================
- Coverage            74.49%   74.38%   -0.12%     
===================================================
  Files                  200      200              
  Lines                13562    13589      +27     
===================================================
+ Hits                 10103    10108       +5     
- Misses                3449     3471      +22     
  Partials                10       10              
Flag Coverage Δ
api:retry 9.09% <0.00%> (-0.02%) ⬇️
api:routes 8.91% <0.00%> (-0.02%) ⬇️
bucket-scanner 85.76% <ø> (ø)
ft_test:queuepopulator 9.01% <0.00%> (-1.30%) ⬇️
ingestion 12.50% <0.00%> (+0.01%) ⬆️
lib 7.58% <0.00%> (-0.01%) ⬇️
lifecycle 18.81% <0.00%> (-0.05%) ⬇️
notification 1.03% <0.00%> (-0.01%) ⬇️
replication 18.45% <31.11%> (+0.03%) ⬆️
unit 50.95% <64.44%> (+0.05%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@delthas
Copy link
Contributor Author

delthas commented Feb 3, 2026

Wondering if there might be an issue where we would refresh items that just had an empty location array (that was not stripped, but was just empty to start with). Investigating.

@delthas
Copy link
Contributor Author

delthas commented Feb 4, 2026

Wondering if there might be an issue where we would refresh items that just had an empty location array (that was not stripped, but was just empty to start with). Investigating.

I added a check on content length > 0 (if content length is 0, no need to fetch the location, there were not stripped, but rather empty in the first place).

@delthas delthas force-pushed the improvement/BB-491/strip-oplog-location branch from bc38d50 to c14bad5 Compare February 4, 2026 14:38
@delthas delthas force-pushed the improvement/BB-491/strip-oplog-location branch from c14bad5 to 4dab14c Compare February 5, 2026 09:26
@delthas delthas force-pushed the improvement/BB-491/strip-oplog-location branch from 4dab14c to 0e7143f Compare February 5, 2026 15:47
@scality scality deleted a comment from bert-e Feb 9, 2026
Issue: BB-491
Signed-off-by: Thomas Flament <thomas.flament@scality.com>
@delthas delthas force-pushed the improvement/BB-491/strip-oplog-location branch from 0e7143f to e51fcab Compare February 10, 2026 10:04
@francoisferrand
Copy link
Contributor

francoisferrand commented Feb 10, 2026

Should we merge this in a 9.3 branch? Or are we confident enough that we are happy to deliver this in a patch release (maybe even 9.2) ?

This saves space on the Kafka side while preventing a refetch
on most (small) objects.

Issue: BB-491
Signed-off-by: Thomas Flament <thomas.flament@scality.com>
@delthas delthas force-pushed the improvement/BB-491/strip-oplog-location branch from e51fcab to f58c5bb Compare February 10, 2026 17:28
@delthas
Copy link
Contributor Author

delthas commented Feb 11, 2026

Should we merge this in a 9.3 branch? Or are we confident enough that we are happy to deliver this in a patch release (maybe even 9.2) ?

Let's merge in: 9.3.

@bert-e
Copy link
Contributor

bert-e commented Feb 11, 2026

Incorrect fix version

The Fix Version/s in issue BB-491 contains:

  • 9.2.1

Considering where you are trying to merge, I ignored possible hotfix versions and I expected to find:

  • 9.2.1

  • 9.3.0

Please check the Fix Version/s of BB-491, or the target
branch of this pull request.

Issue: BB-491
Signed-off-by: Thomas Flament <thomas.flament@scality.com>
@delthas delthas closed this Feb 12, 2026
@delthas
Copy link
Contributor Author

delthas commented Feb 12, 2026

Moved to #2715

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants