Re:SQLite Release 3.37.0
by ComputerGuru on Saturday November 27, 2021 @04:43PM
(#29363865)
> but I can't see those being huge wins.
I agree from an algorithmic perspective but in the real world, it really depends. The size of a non-text/binary cell within a column is now fixed, meaning guaranteed to never need to resize/reallocate when streaming results. That could translate to non-negligible improvements (multiple percentage point speed up) if it’s implemented separately from the existing code path.
> The size of a non-text/binary cell within a column is now fixed
I think this is not true since the on-disk format didn't change, ie, ints are still variable-size whether strict or not.
Re:SQLite Release 3.37.0
by ComputerGuru on Sunday November 28, 2021 @11:13AM
(#29370016)
The format/spec doesn’t change, the implementation does. “This field can be variably sized” vs “but in practice since this is a strict table it will always be exactly n bytes”
I would expect the additional checks on writes to be negligible in most cases (dwarfed by other bookkeeping and I/O). I imagine that strict mode could enable some optimizations for read queries, but I can't see those being huge wins.