Skip to content

Conversation

@joseph-isaacs
Copy link
Contributor

No description provided.

… in dict

Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
@joseph-isaacs joseph-isaacs added the chore Release label indicating a trivial change label Jul 2, 2025
@joseph-isaacs joseph-isaacs requested a review from robert3005 July 2, 2025 15:15
u
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>

impl DictArray {
pub fn try_new(mut codes: ArrayRef, values: ArrayRef) -> VortexResult<Self> {
pub fn try_new(codes: ArrayRef, values: ArrayRef) -> VortexResult<Self> {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a unit test checking for diff nullability of codes and values?

Copy link
Contributor

@robert3005 robert3005 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a small optimisation possible at the reader level but at this level it's just a matter of casts. I think this would make more sense if we had dict array as a selection vector.

@robert3005 robert3005 closed this Jul 28, 2025
@robert3005 robert3005 deleted the ji/dict-diff-null-code-values branch August 12, 2025 13:23
@joseph-isaacs joseph-isaacs restored the ji/dict-diff-null-code-values branch September 1, 2025 11:51
@joseph-isaacs joseph-isaacs reopened this Sep 1, 2025
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
…code-values

# Conflicts:
#	encodings/dict/src/array.rs
#	encodings/dict/src/serde.rs
@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Sep 1, 2025

Deploying vortex-bench with  Cloudflare Pages  Cloudflare Pages

Latest commit: 11a605b
Status: ✅  Deploy successful!
Preview URL: https://751405d7.vortex-93b.pages.dev
Branch Preview URL: https://ji-dict-diff-null-code-value.vortex-93b.pages.dev

View logs

Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
@codecov
Copy link

codecov bot commented Sep 1, 2025

Codecov Report

❌ Patch coverage is 95.45455% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 88.88%. Comparing base (7ef1e5f) to head (4e905a2).
⚠️ Report is 9 commits behind head on develop.

Files with missing lines Patch % Lines
encodings/dict/src/array.rs 93.33% 1 Missing ⚠️

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@robert3005
Copy link
Contributor

If we are going to do this then don't you also want the nulls to live in values by default?

@joseph-isaacs
Copy link
Contributor Author

joseph-isaacs commented Sep 1, 2025

By default, do you mean the in writer?

@robert3005
Copy link
Contributor

I mean the dictbuilder in btrblocks compressor and the dictwriter

Copy link
Contributor

@robert3005 robert3005 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's do it, this was the original dict implementation before we simplified it. Before we see any benefit from it we have to make sure to change the writer and compressor

@joseph-isaacs joseph-isaacs merged commit 9c0296c into develop Sep 2, 2025
40 checks passed
@joseph-isaacs joseph-isaacs deleted the ji/dict-diff-null-code-values branch September 2, 2025 10:28
joseph-isaacs added a commit that referenced this pull request Oct 27, 2025
This is not a breaking change. This can allow expr pushdown on the
values without having to check the codes validity.

Mirrors: #3736

---------

Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Release label indicating a trivial change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants