Merged PRs
- 1169: go/libraries/doltcore/sqle: Keyless tables don't have PK index -- fix describe panic
- 1167: C# test for alternate MySQL connector library, upgraded existing to u…
…se dotnet 5 (up from 3) - 1162: unrolled decode varint decode loop
30% faster on the benchmark in this PR.
BenchmarkUnrolledDecodeUVarint/binary.UVarint-8 1000000000 0.0372 ns/op
BenchmarkUnrolledDecodeUVarint/unrolled-8 1000000000 0.0258 ns/op - 1159: Bh/hang fix
Fixes #1153
and disables GC on import errors. - 1157: Address escaping in longtext/json
Longext is no longer being exported properly in json and csv. This pr fixes that. Cc linked comment. - 1151: Implement dolt status table
Implement the dolt_status table. Schema is of the form table_name, staged(bool), status, - 1149: /go/libraries/doltcore/sqle: move table cache to DoltSession, purge on root change
I'm ambivalent about where the table cache lives, but we need to have access to it when we change the root of asqle.Database
This PR purges the table cache when we change roots. IESET @@dolt_head = hashof(...)
. The intention is to limit the scope of edit sessio
ns, and table mutations in general, and contain them to the working root of asqle.Database
.
Currently there is a tricky reference chain within the table cache:sqle.tableCache
->sqle.WritableDoltTable
->sqle.sqlTableEditor
->table/editor.TableEditSesson
When we change roots in the database we also change the root within theTableEditSession
. They're both referencing the new working root.
Without purging the cache, we will keep old tables from the previous working root that still have a reference to theTableEditSession
.
This hasn't caused any issues (yet), but I think it's prudent to limit the scope and lifetime of these interconnected pieces of state. The
next step is to create a freshTableEditSession
each time we switch roots. - 256: added describe queries for keyless tables
- 255: This function implement an Naryfunction type.
Allows you to define sqle functions that have multiple children. - 254: Fixed UNHEX/HEX roundtrip
Simple fix but I ended up completely reevaluating our binary type implementation. Fixed a bug found in thecast
package we were using to
convert strings, and also changedUNHEX
to return the proper SQL type. - 252: Added hash functions
- 249: Alias bug fixes
Fixes a number of buggy behaviors involving column indexes and table name resolution.