Skip to content

CMR-11452 - Remove hour break down in bulk-index/after-date-time & bulk-index/between-date-time to improve performance - #2487

Merged
jaortega527 merged 4 commits into
masterfrom
CMR-11452
Aug 28, 2026
Merged

CMR-11452 - Remove hour break down in bulk-index/after-date-time & bulk-index/between-date-time to improve performance#2487
jaortega527 merged 4 commits into
masterfrom
CMR-11452

Conversation

@jaortega527

Copy link
Copy Markdown
Contributor

Overview

  • Remove hour break down in bulk-index/after-date-time & bulk-index/between-date-time to improve performance
  • Add support for bypassing the max window size using a header

What are the changes?

  • Updated /bulk-index/after-date-time and /bulk-index/between-date-time to send one full daterange reindexing event per provider instead of chunking the events by hour.
  • Increased the default bulk-index/after-date-time range limit from 7 days to 30 days
  • Added CMR-Bulk-Index-Ignore-Time-Range-Limit: true to bypass the bulk-index/after-date-time range limit
  • Updated appropriate unit tests, integration-test expectations, logging, configuration, and documentation.

What areas of the application does this impact?

  • bootstrap-app

Required Checklist

  • New and existing unit and int tests pass locally and remotely
  • clj-kondo has been run locally and all errors in changed files are corrected
  • I have commented my code, particularly in hard-to-understand areas
  • I have made changes to the documentation (if necessary)
  • My changes generate no new warnings

Additional Checklist

  • I have removed unnecessary/dead code and imports in files I have changed
  • I have cleaned up integration tests by doing one or more of the following:
    • migrated any are2 tests to are3 in files I have changed
    • de-duped, consolidated, removed dead int tests
    • transformed applicable int tests into unit tests
    • reduced number of system state resets by updating fixtures. Ex) (use-fixtures :each (ingest/reset-fixture {})) to be :once instead of :each

@codecov-commenter

codecov-commenter commented Aug 20, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 85.71429% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 57.96%. Comparing base (543a30f) to head (d50e8e5).

Files with missing lines Patch % Lines
bootstrap-app/src/cmr/bootstrap/api/routes.clj 0.00% 2 Missing ⚠️
...bootstrap/services/dispatch/impl/message_queue.clj 66.66% 0 Missing and 2 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2487      +/-   ##
==========================================
- Coverage   57.97%   57.96%   -0.02%     
==========================================
  Files        1074     1074              
  Lines       74718    74707      -11     
  Branches     2197     2190       -7     
==========================================
- Hits        43316    43302      -14     
- Misses      29354    29356       +2     
- Partials     2048     2049       +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 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.


(defn- ignore-after-date-time-limit?
[headers]
(= "true"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why compare string instead of bool?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a good point. I updated to use parseBoolean.

Comment thread bootstrap-app/test/cmr/bootstrap/test/api/bulk_index_test.clj
@jaortega527
jaortega527 merged commit c5cd748 into master Aug 28, 2026
6 checks passed
@jaortega527
jaortega527 deleted the CMR-11452 branch August 28, 2026 17:53
isja17 pushed a commit that referenced this pull request Aug 31, 2026
…lk-index/between-date-time to improve performance (#2487)

* CMR-11452 - Removed hour "chunking" from bulk-index/after-date-time and bulk-index/between-date-time

* CMR-11452 - Updated default max window to 720 hours (30 days) and added support for header override to allow any size window

* CMR-11452 - Small improvement to error message when after_date_time range is too large

* CMR-11452 - Update header retrieval to use parseBoolean instead of using string comparison
isja17 pushed a commit that referenced this pull request Aug 31, 2026
…lk-index/between-date-time to improve performance (#2487)

* CMR-11452 - Removed hour "chunking" from bulk-index/after-date-time and bulk-index/between-date-time

* CMR-11452 - Updated default max window to 720 hours (30 days) and added support for header override to allow any size window

* CMR-11452 - Small improvement to error message when after_date_time range is too large

* CMR-11452 - Update header retrieval to use parseBoolean instead of using string comparison
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