Skip to content

Dolt 0.15.1 released

Compare
Choose a tag to compare
@oscarbatori oscarbatori released this 18 Mar 02:35
ed0666e

We are excited to announce the the release of Dolt 0.15.1.

AS OF

We now support AS OF queries, similar to the Microsoft SQL Server implementation described here. Timestamps are not yet supported for AS OF expressions, but users can use branch names, commit hashes, and other commits specs:

SELECT name FROM persons AS OF 'add-new-employees'
SELECT * FROM persons AS OF 'hvbsl13cbi03ptft78k0pgtkgpd68ehj'
SELECT * FROM persons AS OF 'HEAD~'

These queries will retrieve rows from the table as it existed at the named revision. Different tables in a join can use different AS OF clauses:

SELECT name FROM persons as of 'HEAD~' NATURAL JOIN addresses AS OF 'HEAD~2'

Other

Elsewhere we continued to improve the performance and correctness of SQL, expand test coverage, and fix bugs.

Merged PRs

  • 474: Fixed bug caused by overzealous refactoring
  • 471: Zachmu/batch bug
    This fixes #467.
    The SQL script in question deleted and recreated a subset of the table, and should have resulted in no diff. Before this change, it resulted in some subset of rows being deleted. The issue was that DoltDatabase in batch mode was using mapEditor.Remove and mapEditor.Add for the same keys, which doesn't work in all (most) cases. The solution is to flush the cache before and after any non-insert statement when running in batch mode.
    This change also makes the output for batch mode more sensible.
    Brian to review, Andy and Aaron FYI.
  • 469: dolt sql-server bats test support
  • 468: Zachmu/as of
    Dolt support for AS OF queries.
    This won't build until dolthub/go-mysql-server#71 is merged and dependencies updated.
  • 465: Fixed error where we weren'tlogging an error that resulted from flush…
    …ing a batch SQL import
  • 461: add information_schema database
  • 460: /go/libraries/doltcore/sqle/logictest/main/main.go: Add timeout result for sqllogictests
  • 456: Andy/datetime fix
  • 455: Fix the SQL
    server command by providing it the appropriate variable when instantiating SQL server object.
  • 453: reorganized to create testcommands package
    This PR is simply a reorganization to allow for the testcommands package, see go/libraries/doltcore/dtestutils/testcommands/command.go.
    These sorts of end-to-end tests have been very useful so far in writing rebase and super schema, and I'd like to expand their use across the codebase.
  • 452: /bats/remotes-file-system.bats: Add skipped test for failed branch deletes after fetch
  • 451: /bats/remotes-file-system.bats: Add skipped bats test for fetch display branch bug
  • 449: adding skipped bats tests for table merge panics
  • 447: First cut at generating CLI docs for docs site
    Our CLI has help text, we also use that text to generate docs for our documentation site at (DoltHub docs)[dolthub.com/docs].
    Generating docs and command line output from the same content entails three separate concerns:
    1. the raw content
    2. modifying the content so the rendering is correct (in this case shell output and Gatsby build of .mdx files, JSX version of .md)
    3. IO for writing to console (CLI help text) and files (.md files for building docs)
      The goal of this PR is to move us towards a clean separation of these three concerns using Go templates. Specifically
    • implement helper types and methods for modifying content to render correctly in CLI output or .mdx
    • modify the raw content to the new data structures and text format that can be templated
    • update markdown generation code to simply request a template, rather than building document manually
      Future work will be to use templates for the CLI output.
  • 446: go/store/nbs: s3_table_reader: Be certain to close body readers when reading from S3.
    It is necessary and correct that we close these readers. Helps with persistent
    connection reuse, accurate logging and timing metrics, timely resource
    finalization, etc.
  • 443: Added a succeeding bats test for push --set-upstream.
    Could not repro panic from #442.
  • 441: Added skipped bats test for update a datetime field
  • 439: get rid of unique counts
  • 438: Db/dolt sqllogic add version to DoltRecordResult
  • 437: bumped version for release
  • 436: pull stomp fix
  • 71: Zachmu/as of
    AS OF implementation.
    This change also removes context.Context references from the core.go interfaces, replacing them with sql.Context to be consistent.
  • 69: added conversion logic to SetField expression

Closed Issues

  • 467: Running piped SQL file that drops and adds a table produces different results on subsequent runs
  • 466: Repo got in broken state