Overview
This issue tracks open PRs that improve general driver performance — query planning, metadata parsing, memory layout, and row decoding — excluding vector-specific optimizations already tracked in #746.
All PRs listed here are by @mykaul.
Directly performance-related PRs
HIGH priority
| PR |
Title |
Area |
Measured Impact |
| #651 |
Query planning policy optimization |
Query planning |
2.3x–6.4x faster policy decisions |
| #745 |
Metadata schema parsing optimizations |
Schema parsing |
1.98x faster full pipeline, 5.7x memory reduction per row |
| #740 |
namedtuple factory caching |
Row decoding |
135x faster class creation, 3.7x end-to-end |
MEDIUM priority
| PR |
Title |
Area |
Measured Impact |
| #659 |
slots on connection/protocol frame classes |
Memory |
~5-7x memory reduction per frame instance |
| #630 |
column_encryption_policy fast-path check |
Row decoding |
Eliminates per-cell branch when encryption is unused |
LOW-MEDIUM priority
| PR |
Title |
Area |
Measured Impact |
| #629 |
Remove TRIGGERS query for ScyllaDB |
Schema refresh |
1 fewer CQL round-trip per schema refresh |
Test infrastructure
| PR |
Title |
Area |
| #653 |
Query planning benchmarks |
Benchmarks for #651 |
Proposed merge order
The PRs have minimal interdependencies. Suggested order based on risk and impact:
| Order |
PR |
Rationale |
| 1 |
#653 |
Benchmark infrastructure - no functional changes, enables measuring #651 |
| 2 |
#651 |
Query planning - high impact, self-contained |
| 3 |
#629 |
Remove TRIGGERS - small, low-risk |
| 4 |
#630 |
Encryption fast-path - small, low-risk |
| 5 |
#740 |
namedtuple caching - high impact, touches row factory |
| 6 |
#745 |
Metadata parsing - high impact, touches metadata.py extensively |
| 7 |
#659 |
slots on frames - medium impact, touches connection/protocol classes |
Relationship to #746
Issue #746 tracks vector search (VectorType) performance PRs. Some PRs in #746 benefit general workloads too (e.g., #734 remove copies on read path, #742 ParseDesc caching, #741 deserializer caching, #743 UTF8 decode). Those are tracked in #746 and not duplicated here.
Together, #746 and this issue cover all open performance-related PRs in the repository.
Overview
This issue tracks open PRs that improve general driver performance — query planning, metadata parsing, memory layout, and row decoding — excluding vector-specific optimizations already tracked in #746.
All PRs listed here are by @mykaul.
Directly performance-related PRs
HIGH priority
MEDIUM priority
LOW-MEDIUM priority
Test infrastructure
Proposed merge order
The PRs have minimal interdependencies. Suggested order based on risk and impact:
Relationship to #746
Issue #746 tracks vector search (VectorType) performance PRs. Some PRs in #746 benefit general workloads too (e.g., #734 remove copies on read path, #742 ParseDesc caching, #741 deserializer caching, #743 UTF8 decode). Those are tracked in #746 and not duplicated here.
Together, #746 and this issue cover all open performance-related PRs in the repository.