feat: Upgrade velox submodule to y-scope/velox@1604a4d to add support for CLP's FormattedFloat and DictionaryFloat types.#73
Conversation
WalkthroughAdds two CLP node types ( Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor CLP_Schema
participant SchemaMapper as Presto Schema Mapper
note right of CLP_Schema #DDDDFF: New CLP types added
CLP_Schema->>SchemaMapper: send column type (Float / FormattedFloat / DictionaryFloat)
SchemaMapper-->>CLP_Schema: map to Presto DOUBLE
note right of SchemaMapper #EEFFEE: unified mapping to DOUBLE
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
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 |
96b709a to
2ccaa91
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (3)
presto-clp/src/main/java/com/facebook/presto/plugin/clp/metadata/ClpSchemaTree.java(1 hunks)presto-clp/src/main/java/com/facebook/presto/plugin/clp/metadata/ClpSchemaTreeNodeType.java(1 hunks)presto-native-execution/velox(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). (18)
- GitHub Check: test (17.0.13, :presto-tests -P ci-only-plan-determinism)
- GitHub Check: test (17.0.13, :presto-main)
- GitHub Check: test (17.0.13, :presto-tests -P presto-tests-general)
- GitHub Check: test (17.0.13, :presto-tests -P ci-only-local-queries)
- GitHub Check: test (17.0.13, :presto-tests -P ci-only-distributed-queries)
- GitHub Check: test (8.0.442, :presto-main-base)
- GitHub Check: test (8.0.442, :presto-tests -P ci-only-aggregation-queries)
- GitHub Check: test (8.0.442, :presto-tests -P ci-only-plan-determinism)
- GitHub Check: test (8.0.442, :presto-tests -P ci-only-distributed-queries)
- GitHub Check: test (8.0.442, :presto-tests -P ci-only-tpch-distributed-queries)
- GitHub Check: test (8.0.442, :presto-tests -P ci-only-local-queries)
- GitHub Check: test (8.0.442, :presto-tests -P ci-only-distributed-non-hash-gen)
- GitHub Check: test (8.0.442, :presto-tests -P presto-tests-execution-memory)
- GitHub Check: test (8.0.442, :presto-tests -P presto-tests-general)
- GitHub Check: maven-checks (17.0.13)
- GitHub Check: maven-checks (8.0.442)
- GitHub Check: prestocpp-linux-build-for-test
- GitHub Check: prestissimo-worker-images-build
🔇 Additional comments (2)
presto-clp/src/main/java/com/facebook/presto/plugin/clp/metadata/ClpSchemaTreeNodeType.java (1)
30-32: Enum extension looks consistent.The new constants integrate cleanly with the existing lookup-table initialisation, so no further adjustments are needed.
presto-clp/src/main/java/com/facebook/presto/plugin/clp/metadata/ClpSchemaTree.java (1)
120-122: Switch mapping covers the new float variants.Routing FormattedFloat and DictionaryFloat to DOUBLE keeps the Presto surface aligned with the legacy Float handling.
FormattedFloat and DictionaryFloat types.FormattedFloat and DictionaryFloat types.
| CLP uses three distinct double types: ``Float`` (a standard IEEE-754 double-precision value), ``FormattedFloat`` (a | ||
| double-precision value stored together with its original formatting details), and ``DictionaryFloat`` (a | ||
| double-precision value whose full string representation is stored in the variable dictionary, with values encoded by | ||
| their corresponding dictionary IDs). At present, all three are mapped to Presto's ``DOUBLE`` type. |
There was a problem hiding this comment.
Can we format this as a list for readability?
FormattedFloat and DictionaryFloat types.FormattedFloat and DictionaryFloat types.
kirkrodrigues
left a comment
There was a problem hiding this comment.
Edited PR title directly.
bea15e7
into
y-scope:release-0.293-clp-connector
Description
This PR adds support for
FormattedFloatandDictionaryFloattypes in the latest CLP. This PR also has a related PR in Velox repo: y-scope/velox#37, so this PR should be merged after that PR is merged.Checklist
breaking change.
Validation performed
End-to-end tested the queries used in the unit tests in this PR: y-scope/velox#37
Passed the CI.
Summary by CodeRabbit
New Features
Documentation
Chores