Skip to content

Add aug 21 release - #93

Merged
shuchenliu merged 2 commits into
mainfrom
add-aug-21-release
Aug 31, 2026
Merged

shuchenliu merged 2 commits into
mainfrom
add-aug-21-release

Conversation

@shuchenliu

Copy link
Copy Markdown
Member

add more benchmark testing for Publications queries

Copilot AI left a comment

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.

Pull request overview

Adds a new bulk-search lookup strategy for the PubMed /publications endpoint and updates the benchmarking harness to compare current vs bulk-search, along with expanded unit/integration tests and refreshed documentation.

Changes:

  • Implement bulk-search alternative-identifier resolution (single terms _search + safe reverse-mapping with fallback to exact per-ID _msearch).
  • Add Elasticsearch client helpers: querymany_exact(...) (root-field term _msearch) and search_terms(...) (bounded terms _search with hit-total reporting).
  • Update benchmark CLI/tests/docs to replace the prior two-phase experiment with bulk-search.

Reviewed changes

Copilot reviewed 13 out of 13 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/test_publications_load.py Updates benchmark harness tests to use bulk-search strategy and labels.
tests/test_elasticsearch.py Adds coverage for querymany_exact request shape and search_terms behavior/result formatting.
tests/test_document_metadata.py Reworks metadata service tests for bulk-search, adds fallback/ordering/concurrency cases, and expands live integration coverage across strategies.
README.md Documents the new bulk-search experiment, updated index-shape expectations, and refreshed benchmark instructions.
biothings_annotator/webapp/openapi.json Updates endpoint/schema descriptions to reflect alternate identifiers living in pubmed.identifiers.
biothings_annotator/application/views/document_metadata.py Switches header-driven A/B selector from two-phase to bulk-search using strategy constants.
biothings_annotator/annotator/settings.py Removes the deprecated DOCUMENT_METADATA_TWO_PHASE_LOOKUP setting.
biothings_annotator/annotator/elasticsearch.py Introduces querymany_exact and search_terms plus shared exact-batch helper.
biothings_annotator/annotator/document_metadata.py Implements bulk-search strategy, strategy selection, and safer reverse-mapping with fallback.
benchmarks/publications/workload.py Updates supported lookup strategies to include bulk-search.
benchmarks/publications/runner.py Renames paired observation arm and comparison logic from two-phase to bulk-search.
benchmarks/publications/report.py Updates reporting keys/labels and delta semantics to bulk-search minus current.
benchmarks/publications/main.py Updates CLI help text to reflect bulk-search paired comparisons.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@shuchenliu
shuchenliu merged commit c159da2 into main Aug 31, 2026
11 checks passed
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.

2 participants