Skip to content

Blob store performance#29

Merged
TJbrunk merged 6 commits into
mainfrom
blob_store_performance
Jul 8, 2026
Merged

Blob store performance#29
TJbrunk merged 6 commits into
mainfrom
blob_store_performance

Conversation

@TJbrunk

@TJbrunk TJbrunk commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

Improves blob store performance and observability by pre-filtering CID input lists, enhancing error logging diagnostics, and making batch operation concurrency configurable.

Changes

Pre-filtering & Deduplication (mod.rs)

  • Filter out common non-CID strings (urn:uuid:, did:key:) before batch operations
  • Remove duplicate CIDs to reduce redundant Azure Blob Storage requests
  • Add trace log of the final CID list being fetched

Configurable Batch Concurrency (mod.rs, blob_store.rs, azure_blob_bulk_get.rs)

  • Add optional concurrency: Option parameter to:
    • exists_many()
    • get_many()
    • put_many()
  • When None, falls back to batch_concurrency_limit() (default: 16)
  • Updated all call sites (FFI layer, example, tests) to pass None to use defaults

Enhanced Error Logging (azure_blob.rs)

  • Distinguish 404 responses (blob not found) from other HTTP errors with appropriate log levels
    • 404 → debug-level log (expected case)
    • Other HTTP errors → warn-level with status code and error_code details
    • Non-HTTP errors → warn-level with error kind details
  • Fix typo in error message ("not init" → "not initialized")
  • Provide structured logging with CID and error details for easier debugging

Impact

  • Reduces unnecessary API calls to Azure Blob Storage by filtering invalid inputs and deduplicating requests
  • Enables fine-grained concurrency control per operation while maintaining backward compatibility
  • Improves troubleshooting with more granular error classification and detailed context

@TJbrunk
TJbrunk marked this pull request as ready for review July 8, 2026 16:00
@TJbrunk
TJbrunk requested a review from captjt July 8, 2026 17:17
@TJbrunk
TJbrunk merged commit b8a22af into main Jul 8, 2026
3 checks passed
@TJbrunk
TJbrunk deleted the blob_store_performance branch July 8, 2026 18:06
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