mozilla/mentat

[meta] Full Datalog type support (instants, UUIDs, URIs)

Open

#201 opened on Jan 25, 2017

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Rust (116 forks)github user discovery
correctnessenhancementhelp wanted

Repository metrics

Stars
 (1,661 stars)
PR merge metrics
 (PR metrics pending)

Description

Over in #170, I simplified things by not including placeholders for Mentat value types I wasn't going to support at the start: :db.type/instant, :db.type/uuid, and :db.type/uri. (We might consider supporting JSON and a binary blob type like :db.type/bytes as well.)

This ticket tracks supporting these types. Off the top, this will mean:

  1. Adding new DB_TYPE_* values to the bootstrapper;
  2. Bumping the SQL schema to accommodate the new idents;
  3. Adding new ValueType cases;
  4. Adding corresponding TypedValue cases;
  5. Implementing the conversions to and from SQL;
  6. testing the new types in the transactor and potentially in the query engine as well.

Contributor guide