-
Notifications
You must be signed in to change notification settings - Fork 92
Add metadata API #3279
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Add metadata API #3279
Conversation
|
[CHATOPS:HELP] ChatOps commands.
|
📝 WalkthroughWalkthroughAdds optional Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Client
participant Gateway as API Gateway / gRPC
participant MetaSvc as SearchWithMetadata
participant Core as Vector Index
participant Store as Metadata Store
Client->>Gateway: SearchWithMetadata(Request { vector/id, metadata })
Gateway->>MetaSvc: SearchWithMetadata RPC
MetaSvc->>Core: Search(vector/id)
Core-->>MetaSvc: Neighbors (ids, scores)
MetaSvc->>Store: Fetch metadata for ids
Store-->>MetaSvc: Metadata map
MetaSvc-->>Gateway: Response { neighbors + metadata }
Gateway-->>Client: Response
sequenceDiagram
autonumber
actor Client
participant Gateway as API Gateway / gRPC
participant MetaIns as InsertWithMetadata
participant Core as Vector Index
participant Store as Metadata Store
Client->>Gateway: InsertWithMetadata(Request { id, vector, metadata })
Gateway->>MetaIns: InsertWithMetadata RPC
MetaIns->>Core: Insert(id, vector)
Core-->>MetaIns: Location
MetaIns->>Store: Upsert metadata (id, metadata)
Store-->>MetaIns: OK
MetaIns-->>Gateway: Object.Location
Gateway-->>Client: Location
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Potential areas needing extra attention:
Suggested labels
Suggested reviewers
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🔇 Additional comments (1)
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. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
apis/proto/v1/payload/payload.proto(13 hunks)apis/proto/v1/vald/meta.proto(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (10)
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
- GitHub Check: build
apis/proto/v1/payload/payload.proto
Outdated
| // The configuration of the remove request. | ||
| Config config = 2; | ||
| // The key is related to the request vector. | ||
| optional Meta.Key key = 3; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this Remove mean:
- removing the object with the given
idif thekeyis set, or - removing the specified
keyfrom the object with the givenid?
Would it be more useful to use KeyValue instead, or perhaps define a separate RemoveByKey?
apis/proto/v1/payload/payload.proto
Outdated
| // The configuration of the search request. | ||
| Config config = 2; | ||
| // The key is related to the vector. | ||
| optional Meta.Key key = 3; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
kv is useful when filtering instead of just the key? (same for other search requests)
Deploying vald with
|
| Latest commit: |
2663eda
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://fcb5dbbb.vald.pages.dev |
| Branch Preview URL: | https://feature-metadata-gateway-imp.vald.pages.dev |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (1)
apis/proto/v1/payload/payload.proto (1)
119-120: Remove proto3-incompatibleoptionalon message-typed field (duplicate from prior review).This issue was flagged in a previous review.
optionalcannot be applied to message-typed fields in proto3; only scalar types support theoptionalqualifier.Meta.Valueis a message type, so the field declaration must dropoptional.Apply this diff:
- // The value is related to the request key. - optional Meta.Value value = 3; + // The value is related to the request key. + Meta.Value value = 3;
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
apis/proto/v1/payload/payload.proto(10 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (200)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: check-format-diff
🔇 Additional comments (1)
apis/proto/v1/payload/payload.proto (1)
165-166: Verify consistency in metadata representation across messages.Metadata is added using different patterns:
Search.Responseusesoptional Meta.Value value(from existing Meta message with google.protobuf.Any)- Insert/Update/Upsert/Object operations use
optional bytes metadata(raw bytes)Additionally, a new
Metadatamessage (lines 813–822) definesKeyandValuewith bytes, which differs from the existingMetamessage's use ofgoogle.protobuf.Any.Clarify the design intent: Should all metadata fields use raw bytes consistently, or should Search.Response align with the others? Also document when to use the existing
Metamessage versus the newMetadatamessage.Also applies to: 183-184, 212-213, 230-231, 248-249, 274-275, 292-293, 424-425
| optional bytes metadata = 3; | ||
| } | ||
|
|
||
| // Represent mthe ultiple upsert request. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix typo in comment.
Line 278 has a typo: "mthe ultiple" should be "the multiple".
Apply this diff:
- // Represent mthe ultiple upsert request.
+ // Represent the multiple upsert request.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| // Represent mthe ultiple upsert request. | |
| // Represent the multiple upsert request. |
🤖 Prompt for AI Agents
In apis/proto/v1/payload/payload.proto around line 278, fix the typo in the
comment by replacing "mthe ultiple" with "the multiple" so the comment reads
"Represent the multiple upsert request." Ensure only the comment text is changed
and maintain existing punctuation and formatting.
apis/proto/v1/payload/payload.proto
Outdated
| } | ||
|
|
||
| // Metadata related message | ||
| message Metadata { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is message Meta different from this message?
apis/proto/v1/payload/payload.proto
Outdated
| // Search results. | ||
| repeated Object.Distance results = 2; | ||
| // The value is related to the request key. | ||
| optional Meta.Value value = 3; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What type of search is supported?
For example, are key = value (vectors with the key-value pair) or key (vectors with the key) supported?
| // Represent a search response. | ||
| message Response { | ||
| // The unique request ID. | ||
| string request_id = 1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any support of metadata delete API?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
♻️ Duplicate comments (1)
apis/proto/v1/payload/payload.proto (1)
276-276: Fix lingering typo in comment.The typo from past reviews remains: "mthe ultiple" should be "the multiple".
Apply this diff:
- // Represent mthe ultiple upsert request. + // Represent the multiple upsert request.
🧹 Nitpick comments (1)
apis/proto/v1/payload/payload.proto (1)
813-822: Clarify the distinction betweenMetaandMetadatamessage types.A
Metadatamessage is now defined withbytes keyandbytes valuefields, but there is already aMetamessage (line 798–811) with different structure (string keyandgoogle.protobuf.Any value). The purpose and use-case distinction between these two is not documented.Add inline comments explaining when each should be used, or consolidate if only one is needed.
Are both
MetaandMetadatamessage types intended to coexist? If so, clarifying comments on each would help prevent confusion in downstream code.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
apis/proto/v1/payload/payload.proto(10 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (170)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: check-format-diff
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
🔇 Additional comments (1)
apis/proto/v1/payload/payload.proto (1)
163-164: Metadata field additions look structurally sound.All
optional bytes metadatafields are correctly applied to scalar types (valid in proto3). The fields are added consistently across Insert, Update, Upsert, TimestampRequest, and response messages (Distance, Vector), maintaining a uniform pattern.Also applies to: 181-182, 210-211, 228-229, 246-247, 272-273, 290-291, 392-393, 424-425
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (2)
apis/proto/v1/vald/meta.proto (2)
386-386: Fix documentation formatting typo.Line 386 contains a double-slash comment marker:
// // ---. This should be a single// ---to match the documentation style used consistently throughout the file.- // // --- + // ---
547-547: Update RPC documentation comments to match actual RPC names.Lines 547 and 582 contain documentation comments that reference generic RPC names without the
WithMetadatasuffix, creating an inconsistency with the actual RPC definitions:
- Line 547: Comment says "StreamGetObject" but the RPC (line 571) is
StreamGetObjectWithMetadata- Line 581–582: Comment says "A method to get all the vectors" but the RPC is
StreamListObjectWithMetadataUpdate the comments to reference the correct RPC names with the
WithMetadatasuffix for consistency and clarity.// Overview - // StreamGetObject RPC is the method to get the metadata of multiple existing vectors using the [bidirectional streaming RPC]... + // StreamGetObjectWithMetadata RPC is the method to get the metadata of multiple existing vectors using the [bidirectional streaming RPC]...Also applies to: 581-582
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
apis/proto/v1/vald/meta.proto(1 hunks)
🔇 Additional comments (1)
apis/proto/v1/vald/meta.proto (1)
1-944: Metadata fields confirmed in all referenced payload.v1 types.Verification confirms that
payload.protohas been properly updated withoptional bytes metadatafields across all relevant message types:
- Insert.Request, Insert.ObjectRequest
- Update.Request, Update.ObjectRequest, Update.TimestampRequest
- Upsert.Request, Upsert.ObjectRequest
- Object.Distance
The meta.proto service definitions correctly reference these payload types and will function as intended with metadata propagation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 5
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
apis/proto/v1/vald/meta.proto(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (168)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build / build (amd64, ubuntu-latest)
- GitHub Check: build
| // gRPC has a message size limitation.<br> | ||
| // Please be careful that the size of the request exceeds the limit. | ||
| // </div> | ||
| // // --- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix malformed documentation comment.
Line 386 contains a double slash: // // ---, which should be // --- to match the pattern elsewhere in the file.
Apply this diff:
- // // ---
+ // ---📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| // // --- | |
| // --- |
🤖 Prompt for AI Agents
In apis/proto/v1/vald/meta.proto around line 386, the documentation comment is
malformed with a double slash ("// // ---"); replace it with a single-comment
marker ("// ---") to match the file's comment pattern and maintain consistency.
| // Overview | ||
| // StreamGetObjectWithMetadata RPC is the method to get the metadata of multiple existing vectors using the [bidirectional streaming RPC](https://grpc.io/docs/what-is-grpc/core-concepts/#bidirectional-streaming-rpc).<br> | ||
| // Using the bidirectional streaming RPC, the GetObject request can be communicated in any order between client and server. | ||
| // Each Upsert request and response are independent. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Correct RPC reference in documentation comment.
The comment references "Upsert" but this is the StreamGetObjectWithMetadata RPC. It should say "Each GetObject request and response are independent" to match the RPC name.
Apply this diff:
- // Each Upsert request and response are independent.
+ // Each GetObject request and response are independent.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| // Each Upsert request and response are independent. | |
| // Each GetObject request and response are independent. |
🤖 Prompt for AI Agents
In apis/proto/v1/vald/meta.proto around line 549, the documentation comment
incorrectly refers to "Upsert"; update the comment text to reference the correct
RPC by replacing "Each Upsert request and response are independent." with "Each
GetObject request and response are independent." so the comment matches the
StreamGetObjectWithMetadata RPC.
| // Overview | ||
| // A method to get all the vectors with server streaming | ||
| // --- | ||
| // Status Code | ||
| // TODO | ||
| // --- | ||
| // Troubleshooting | ||
| // TODO | ||
| rpc StreamListObjectWithMetadata(payload.v1.Object.List.Request) returns (stream payload.v1.Object.List.Response) { | ||
| option (google.api.http).get = "/object/list/metadata"; | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Replace TODO placeholders with complete documentation.
The StreamListObjectWithMetadata RPC (lines 576–577 and 579–580) has empty Status Code and Troubleshooting sections marked "TODO". These should either be populated with valid content or removed if this RPC is not yet intended for release.
Would you like me to help populate these sections with appropriate status codes and troubleshooting guidance, or should we mark this RPC as experimental/alpha pending completion?
🤖 Prompt for AI Agents
In apis/proto/v1/vald/meta.proto around lines 573 to 583, the RPC
StreamListObjectWithMetadata contains placeholder "TODO" entries for the Status
Code and Troubleshooting sections; replace these placeholders with concrete
content by either (A) adding a Status Code list (e.g., OK — successful,
INVALID_ARGUMENT — bad request params, NOT_FOUND — no objects match,
UNAUTHORIZED — auth failure, INTERNAL/UNAVAILABLE — server errors) and a
Troubleshooting section (e.g., validate request parameters, check
authentication/permissions, inspect server logs for internal errors, verify
index/state and retry with exponential backoff), or (B) if the RPC is not ready
for release, mark the RPC as experimental/alpha and remove the TODOs, adding an
explicit note that documentation and stable status codes will be provided later.
| // | ||
| // | name | common reason | how to resolve | | ||
| // | :---------------- | :---------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------- | | ||
| // | CANCELLED | Executed cancel() of rpc from client/server-side or network problems between client and server. | Check the code, especially around timeout and connection management, and fix if needed. | | ||
| // | DEADLINE_EXCEEDED | The RPC timeout setting is too short on the client/server side. | Check the gRPC timeout setting on both the client and server sides and fix it if needed. | | ||
| // | NOT_FOUND | No vectors in the system match the specified timestamp conditions. | Check whether vectors matching the specified timestamp conditions exist in the system, and fix conditions if needed. | | ||
| // | INTERNAL | Target Vald cluster or network route has some critical error. | Check target Vald cluster first and check network route including ingress as second. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Complete the documentation table.
The troubleshooting table for RemoveByTimestampWithMetadata (lines 641–646) is missing a closing pipe character on the last row. Line 646 ends mid-cell without proper table closure.
Apply this diff:
- // | INTERNAL | Target Vald cluster or network route has some critical error. | Check target Vald cluster first and check network route including ingress as second.
+ // | INTERNAL | Target Vald cluster or network route has some critical error. | Check target Vald cluster first and check network route including ingress as second. |📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| // | |
| // | name | common reason | how to resolve | | |
| // | :---------------- | :---------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------- | | |
| // | CANCELLED | Executed cancel() of rpc from client/server-side or network problems between client and server. | Check the code, especially around timeout and connection management, and fix if needed. | | |
| // | DEADLINE_EXCEEDED | The RPC timeout setting is too short on the client/server side. | Check the gRPC timeout setting on both the client and server sides and fix it if needed. | | |
| // | NOT_FOUND | No vectors in the system match the specified timestamp conditions. | Check whether vectors matching the specified timestamp conditions exist in the system, and fix conditions if needed. | | |
| // | INTERNAL | Target Vald cluster or network route has some critical error. | Check target Vald cluster first and check network route including ingress as second. | |
| // | |
| // | name | common reason | how to resolve | | |
| // | :---------------- | :---------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------- | | |
| // | CANCELLED | Executed cancel() of rpc from client/server-side or network problems between client and server. | Check the code, especially around timeout and connection management, and fix if needed. | | |
| // | DEADLINE_EXCEEDED | The RPC timeout setting is too short on the client/server side. | Check the gRPC timeout setting on both the client and server sides and fix it if needed. | | |
| // | NOT_FOUND | No vectors in the system match the specified timestamp conditions. | Check whether vectors matching the specified timestamp conditions exist in the system, and fix conditions if needed. | | |
| // | INTERNAL | Target Vald cluster or network route has some critical error. | Check target Vald cluster first and check network route including ingress as second. | |
🤖 Prompt for AI Agents
In apis/proto/v1/vald/meta.proto around lines 640 to 646, the markdown table row
for the INTERNAL error is missing the trailing pipe to close the last cell;
update the last row so it ends with a closing pipe character (add " |" at the
end of line 646) to properly close the table cell and ensure the table renders
correctly.
| // A method to update timestamp an indexed vector and metadata. | ||
| // --- | ||
| // Status Code | ||
| // TODO | ||
| // --- | ||
| // Troubleshooting | ||
| // TODO | ||
| rpc UpdateTimestampWithMetadata(payload.v1.Update.TimestampRequest) returns (payload.v1.Object.Location) { | ||
| option (google.api.http) = { | ||
| post: "/update/timestamp/metadata" | ||
| body: "*" | ||
| }; | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Replace TODO placeholders with complete documentation.
The UpdateTimestampWithMetadata RPC (lines 831–832 and 834) has empty Status Code and Troubleshooting sections marked "TODO". These should either be populated with valid content or removed if this RPC is not yet intended for release.
Would you like me to help populate these sections with appropriate status codes and troubleshooting guidance, or should we mark this RPC as experimental/alpha pending completion?
🤖 Prompt for AI Agents
In apis/proto/v1/vald/meta.proto around lines 828–840, the
UpdateTimestampWithMetadata RPC has placeholder "TODO" entries for Status Code
and Troubleshooting; replace those TODOs with either (A) a Status Code list
describing expected gRPC/HTTP responses such as: 200 OK (successful update), 400
InvalidArgument (malformed request/invalid timestamp/metadata), 404 NotFound
(object id not found), 409 AlreadyExists/Conflict (timestamp conflict if
applicable), 500 Internal (server error), and 503 Unavailable
(dependency/unreachable datastore), or (B) a Troubleshooting section that lists
common failure causes and remedies (invalid request payloads and how to validate
fields, missing object id and how to confirm existence,
permission/authentication issues and required headers, datastore/network errors
with retry guidance and log locations), and if this RPC is not ready for release
instead annotate it as experimental (add a short comment or an option flag
indicating "experimental/alpha" and remove the incomplete sections); implement
one of these two fixes so the proto contains concrete status codes and
actionable troubleshooting steps or is explicitly marked experimental.
Description
Related Issue
Versions
Checklist
Special notes for your reviewer
Summary by CodeRabbit
New Features
Documentation