Details
-
Task
-
Status: Open (View Workflow)
-
Critical
-
Resolution: Unresolved
-
2.0
-
None
-
3.13
Description
Implement conversion tables for text and binary protocol parsing
Building on the new ColumnsDefinitionPacket (object-of-arrays) structure, implement precomputed conversion tables for both text and binary protocol row parsing.
Instead of performing type checks (if/elif) while decoding each row, conversion functions should be resolved once during metadata processing and stored in per-column lookup tables.
Scope
- Add conversion table initialization to ColumnsDefinitionPacket
- Support text protocol and binary protocol separately
- Conversion tables should be indexed by column number
- Row parsing should only:
- extract raw field data
- call the preassigned conversion function
Goals
- Eliminate per-row type branching
- Reduce attribute lookups while parsing
- Share conversion logic between text and binary protocols
- Centralize type handling in column metadata
Benefits
- Improved parsing performance
- Better cache locality
- Cleaner separation between:
- metadata preparation
- row decoding
- Easier future C-level optimization
Dependencies
Requires implementation of ColumnsDefinitionPacket (CONPY-335)
Attachments
Issue Links
- is blocked by
-
CONPY-335 Metadata: Store metadata as an object of arrays instead of an array of objects
-
- Open
-