Giter VIP home page Giter VIP logo

dqlite-docs's Issues

Missing DQLITE_UNIXTIME in the wire protocol documentation

While developing an Erlang client for Dqlite, I discovered that the documentation of the wire protocol doesn't mention the DQLITE_UNIXTIME tuple value type (type code: 9) when it can be returned by Dqlite in row tuples for example. It seems that the documentation of the wire protocol is not part of this repository so I can't open a PR to modify the documentation myself, it's the reason why I opened an issue.

Updating the docs

We want to go through the docs on dqlite.io, update or remove any statements that are out of date, and add basic descriptions of interfaces -- like request types -- that have been implemented in the last couple of years. This is separate from the more comprehensive rewrite that's planned for the future once we have a C client library to document.

Checklist (WIP)

  • Remove out-of-date stuff about checkpointing
  • Update docs for ASSIGN request (formerly PROMOTE)
  • Document new request types:
    • TRANSFER
    • DESCRIBE
    • WEIGHT
  • Document new response types
  • Document schema version 1 for EXEC, EXEC_SQL, QUERY, QUERY_SQL
  • Update documentation about significance of schema version
  • Clarify documentation about the two addresses passed into the dqlite server API
  • Discussion of snapshotting

Consider documenting how VACUUM works, or how space is reclaimed

Why I'm thinking it's worth it:

SQLite is a MVVC database, which means that conceptually, for a stale row to be evicted (or a whole lot of them during VACUUM), the database needs to know when all the "old" read transactions have finished.

SQLite VACUUM obtains an exclusive lock for this process, but that's not something naively feasible in a distributed database.

At the same time, operators (people) need to know when the space may be reclaimed, ideally across the cluster.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.