Get desktop application:
View/edit binary Protocol Buffers messages
Empty
(message has no fields)
Empty
(message has no fields)
The next record to insert will have this offset.
The minimum number of log entries that a collection should have before it should be returned for compaction
Empty
(message has no fields)
Empty
(message has no fields)
Empty
(message has no fields)
TODO: Add error propagation in the response.
(message has no fields)
(message has no fields)
Names are globally unique
(message has no fields)
(message has no fields)
(message has no fields)
Collection ID
(message has no fields)
When segments are set, then the collection and segments will be created as a single atomic operation.
Optional.
(message has no fields)
Request to get a single collection.
Response to GetCollectionRequest.
(message has no fields)
(message has no fields)
Request to restore a collection.
Version of the collection to restore.
Response to RestoreCollectionRequest.
Version of the new collection.
Request to list versions of a collection.
Maximum number of versions to return.
Only return versions before this timestamp.
Only return versions at or after this timestamp. Together with versions_before, this forms an inclusive range.
Response to ListCollectionVersionsRequest.
Whether the list is truncated.
Return collections that need to be GCed based on this cutoff time. Currently, sysdb will return all collections that have versions created before this cutoff time. SysDb can apply additional logic to return the collections that should be prioritized for GC.
Limit the number of collections that can be returned. GC will get n number of collections to GC. After GC is done, it will update the collections such that these collections are not returned again. This is to ensure that we do not GC the same collections over and over again. This also allows for a cheap and stateless pagination without using offsets.
TODO: options as in types.py, its currently unused so can add later
Used in:
A `Where` clause may have a list of children. This enum specifies how the children should be combined.
Used in:
,Used in:
, , , , ,This is the tenant id of the collection.
This is the database name of the collection.
Used in:
,Used in:
The log offset of the first log entry of the collection that needs to be compacted
The timestamp of the first log entry of the collection that needs to be compacted
This is metadata about the Collection that is fixed at creation time.
Used in:
This is the database name at the time of creation. This will not be updated if the database name is changed.
This is the collection name at the time of creation. This will not be updated if the collection name is changed.
This is metadata about the Collection that is mutable. This does not contain information about segments. TODO(rohitcp): Add more fields here to help with Restore.
Used in:
Contains information about a collection at a particular version.
Used in:
Information about segments that are part of this version. Contains file paths for each segment.
TODO(rohitcp): Add additional information from Compaction about the number of files creates, and other helpful information that can help with GC's {collection,version} selection policy.
Used in:
Used in:
The forked collection
The forked collection version
The forking collection
Used for serializing contents in collection version history file.
Contains information about the version history of a collection.
Used in:
List of versions of the collection.
Contains information about a collection at a particular version. Currently, new versions are ONLY created by data compaction.
Used in:
,Information about segments that are part of this version. Contains file paths for each segment.
Metadata about the collection at this version. If there are multiple updates to this information in between compactions, then they are not reflected in the version history.
Timestamp at which this version was created.
Reason for the version change. NOTE: As of now, we only support version change due to data compaction. There is a good chance to include other reasons in the future, especially for DDL operations, recovery, etc.
Used in:
Used in:
,A leaf-node `Where` clause.
Used in:
A leaf-node `WhereDocument` clause may compare a document to a single value.
Used in:
,Used when a leaf-node `Where` clause compares a float to a list of floats. `ListOperator` specifies whether values in the list are allowed or disallowed.
Used in:
Used in:
,Used in:
,Used in:
,A leaf-node `Where` clause may compare a string, int, or float to a single value of the same type. These comparators apply to all three of those types.
Used in:
, , ,Used when a leaf-node `Where` clause compares an int to a list of ints. `ListOperator` specifies whether values in the list are allowed or disallowed.
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
A `Where` clause may have a list of allowed or disallowed values. This enum specifies which type of list it is.
Used in:
, , ,Represents an operation from the log
Used in:
Used in:
Used when a leaf-node `Where` clause compares an int or float to a single value of the same type.
Used in:
,Types here should mirror chromadb/types.py
Used in:
Represents an operation the user submits
Used in:
,Used in:
,Used in:
,Used in:
, , ,Used in:
Used in:
, ,Used in:
, , , , ,Used in:
,Used in:
Used in:
Used when a leaf-node `Where` clause compares an int to a single int.
Used in:
Used when a leaf-node `Where` clause compares a string to a single string.
Used in:
Used when a leaf-node `Where` clause compares a string to a list of strings. `ListOperator` specifies whether values in the list are allowed or disallowed.
Used in:
Used in:
Used in:
,Used in:
, , , , , , ,Used in:
Not set if user wants to delete the key. TODO(Sanket): Should we make this more explicit?
A `UserIds` should contain the set of user provided ids allowed in the result.
Used in:
,Used in:
, , , , ,Used in:
TODO: we need to rethink source of truth for vector dimensionality and encoding
Used in:
Used in:
Used in:
,A `Where` clause for filtering metadata. A `Where` clause is a tree of `Where` clauses, where each node is exactly one of: - A leaf node representing a direct comparison between a metadata key and a value or list of values. - A leaf node representing a direct search against document. - An branch node with a list of children and a way to combine them (AND or OR).
Used in:
, ,A branch-node `Where` clause has a list of children and a specification for how to combine them.
Used in:
A `WhereDocument` clause for filtering metadata. A `WhereDocument` clause is a tree of `WhereDocument` clauses, where each node is exactly one of: - A leaf node representing a `$contains` or `$not_contains` query directly. - An branch node with a list of children and a way to combine them (AND or OR).
Used in:
, ,A branch-node `WhereDocument` node has a list of children.
Used in:
Types of operators for `WhereDocument` clauses. A `WhereDocument` clause can either require that a document contains a value or that it does not contain a value.
Used in: