Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The order of table columns in cpp-driver (and in DESCRIBE KEYSPACE from cqlsh):
position
position
This is exactly how I implemented
cass_table_meta_column
.My only concern is that every time the column is not a part of neither pk nor ck, we need to allocate a vector representing the remaining columns, and sort it. I wonder if it's worth adding such vector to
CassTableMeta
, so we do that only one time.Advantage of other solution is obviously that we increase the performance of
cass_table_meta_column
- I'm not sure how often this method is called by the users.Disadvantage is that we need to store another vector for each table metadata. It means more memory consumption by metadata structs, which is already big enough.
Pre-review checklist
[ ] I have implemented Rust unit tests for the features/changes introduced..github/workflows/build.yml
ingtest_filter
..github/workflows/cassandra.yml
ingtest_filter
.