Skip to content

fix(qdrant): remove deprecated upload_records from instrumentation method lists (#3492)#3805

Open
LeC-D wants to merge 1 commit intotraceloop:mainfrom
LeC-D:fix/qdrant-remove-upload-records-deprecated-method
Open

fix(qdrant): remove deprecated upload_records from instrumentation method lists (#3492)#3805
LeC-D wants to merge 1 commit intotraceloop:mainfrom
LeC-D:fix/qdrant-remove-upload-records-deprecated-method

Conversation

@LeC-D
Copy link

@LeC-D LeC-D commented Mar 15, 2026

Summary

Fixes #3492

Problem

QdrantClient.upload_records was removed from qdrant-client in v1.13 and is not present in v1.16.1+. The method was still listed in both qdrant_client_methods.json and async_qdrant_client_methods.json, causing an AttributeError at instrumentation time for users on newer qdrant-client versions:

AttributeError: type object 'QdrantClient' has no attribute 'upload_records'

Note: The _instrument method already guards against missing attributes via hasattr(), so the crash only affects older published versions of this package. However, keeping stale entries is misleading — they suggest telemetry is being captured for a method that no longer exists.

Fix

Remove upload_records from both:

  • qdrant_client_methods.json
  • async_qdrant_client_methods.json

Verification

Installed qdrant-client==1.16.1 and confirmed via dir(QdrantClient) that upload_points and upload_collection are present, but upload_records is not.

Summary by CodeRabbit

  • Chores
    • Removed observability/tracing spans for the upload_records operation in both synchronous and asynchronous Qdrant client integrations.

@CLAassistant
Copy link

CLAassistant commented Mar 15, 2026

CLA assistant check
All committers have signed the CLA.

@coderabbitai
Copy link

coderabbitai bot commented Mar 15, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2d425bd4-dd23-4308-9fae-004759fdb837

📥 Commits

Reviewing files that changed from the base of the PR and between ca20848 and e952441.

📒 Files selected for processing (2)
  • packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/async_qdrant_client_methods.json
  • packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/qdrant_client_methods.json
💤 Files with no reviewable changes (2)
  • packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/qdrant_client_methods.json
  • packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/async_qdrant_client_methods.json

📝 Walkthrough

Walkthrough

Removed upload_records entries from OpenTelemetry instrumentation mappings for both sync and async Qdrant clients; no other mappings were changed.

Changes

Cohort / File(s) Summary
Qdrant Instrumentation Mappings
packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/async_qdrant_client_methods.json, packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/qdrant_client_methods.json
Deleted the upload_records method mapping for AsyncQdrantClient and QdrantClient, removing associated span names (e.g., qdrant.upload_records). No other entries were modified.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 I hopped through JSON, tidy and spry,

Found upload_records waving goodbye,
I nudged the mapping, neat and small,
Now instrumentation stands tall! 🥕

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: removing deprecated upload_records from instrumentation method lists.
Linked Issues check ✅ Passed The PR directly addresses issue #3492 by removing upload_records from both qdrant_client_methods.json and async_qdrant_client_methods.json, resolving the AttributeError and ensuring compatibility with qdrant-client v1.16.1+.
Out of Scope Changes check ✅ Passed All changes are in-scope, removing only the stale upload_records method references from the instrumentation method lists as required by issue #3492.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

You can disable the changed files summary in the walkthrough.

Disable the reviews.changed_files_summary setting to disable the changed files summary in the walkthrough.

…eloop#3492)

QdrantClient.upload_records was removed in qdrant-client v1.13+ and is
no longer present in v1.16.1. Although _instrument already guards via
hasattr(), keeping stale entries in the method JSON is misleading and
causes unnecessary warnings. Remove upload_records from both
qdrant_client_methods.json and async_qdrant_client_methods.json.

Verified: qdrant-client==1.16.1 exposes upload_points and
upload_collection but not upload_records.
@LeC-D LeC-D force-pushed the fix/qdrant-remove-upload-records-deprecated-method branch from ca20848 to e952441 Compare March 19, 2026 00:13
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.

🐛 Bug Report: opentelemetry-instrumentation-qdrant is incompatible with qdrant-client version 1.16.1

2 participants