Skip to content

Conversation

@evetion
Copy link

@evetion evetion commented Dec 8, 2025

The strict query mode, while hard to use as its shadowed (#328), currently errors, as it tries to convert values back to a Missing Union.

This PR uses nonmissingtype for strict queries to make it work. It does mean that in cases where the query starts with a NULL value, it forces the declared type, potentially corrupting custom data (like the symbol in this test). Whether this should be the default behaviour is up for discussion and will not be changed in this PR. Also see the comment here:

# FIXME deserialized type have priority over declared type, is it fine?

I've also added a few type hints (found using Cthulhu) to fix type instabilities, for my large 200MB+ table, strict mode is now almost 10 times faster.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant