Commit graph

  • 9f1cc2e370 Add :db/doc as a default attribute. Richard Newman 2016-08-23 09:46:14 -0700
  • c128d71ee2 Warn when an attribute could not be interned when transacting. Richard Newman 2016-08-23 09:46:00 -0700
  • 8b45f0ffea Correctly handle SQL errors in <?all-rows. Fixes #40. Richard Newman 2016-08-23 20:47:04 -0700
  • 15df2d9eac Rework query tests to use a live DB. Fixes #35. Richard Newman 2016-08-19 09:15:16 -0700
  • 4d2079380c Define deftest-db to do async testing with an open DB. Richard Newman 2016-08-19 09:13:57 -0700
  • 967a655dd9 Project real values. Fixes #30. Richard Newman 2016-08-19 12:21:20 -0700
  • 06d71654e4 Implement type-aware querying. Fixes #14. Richard Newman 2016-08-15 14:39:39 -0700
  • 7551f4156f Rewrite <resolve-lookup-refs to work for lookup refs. Richard Newman 2016-08-12 16:29:44 -0700
  • bda67ac8e8 Rework <apply-entities to be 40% faster and not blow the stack in CLJS. Richard Newman 2016-08-10 13:16:25 -0700
  • 63342e344f Basic test for ds/fulltext?. Richard Newman 2016-08-11 17:20:27 -0700
  • bd3a6d49f2 Simplify id-literal?, avoid some consing. Richard Newman 2016-08-10 13:15:58 -0700
  • f63719d3de Symbolicating is not expensive. Richard Newman 2016-08-09 19:57:11 -0700
  • 66c918009e Memoize and simplify parts of insertion. Richard Newman 2016-08-09 17:28:28 -0700
  • e892a0437d Minor perf improvement: use UNION ALL to populate tx_lookup in a single INSERT. Richard Newman 2016-08-09 16:56:51 -0700
  • 6f439e3d1d Minor perf improvement: create idx_tx_lookup_added after populating tx_lookup. Richard Newman 2016-08-09 16:55:04 -0700
  • 2754104794 Limit number of imported places, not number of imported rows. Default to 1000. Richard Newman 2016-08-18 13:45:18 -0700
  • 2f324cfe17 Don't attempt to add a places visit list of (nil). Richard Newman 2016-08-17 09:46:05 -0700
  • 2bdf60c8ea Places import: add a title import function to exercise lookup refs. Richard Newman 2016-08-12 16:08:47 -0700
  • f92e2d9322 Places import: LEFT JOIN correctly to pick up unvisited pages. Richard Newman 2016-08-12 16:08:19 -0700
  • 3ea4a523a9 Places import: title is the same for each returned row. Don't filter. Richard Newman 2016-08-12 16:07:51 -0700
  • a68c281066 Remove dependency on test code from places importer. Richard Newman 2016-08-12 13:21:29 -0700
  • 63b304ea5f Start importing places. This is just about profiling for now. Nick Alexander 2016-08-08 23:51:23 -0700
  • badec36aaa Completely rewrite main transaction logic to be faster. Nick Alexander 2016-08-08 23:30:45 -0700
  • 4a46bdd1bd Extract datomish.db.debug from test code, in order to use it during development. Nick Alexander 2016-08-08 09:40:34 -0700
  • 9aed24ae39 Fix :db.unique/value, which should be per (a, v) pair, not per v-value. Nick Alexander 2016-08-07 22:02:51 -0700
  • 0799a42820 Add Datomic, for testing. Nick Alexander 2016-08-06 22:59:52 -0700
  • 3dfdea99e7 Implement parts: Make the DB allocate and persist entity IDs. Nick Alexander 2016-08-06 17:35:24 -0700
  • 470cb7a82d Define <-tagged-SQLite and tagged-SQLite-to-JS to do tag-aware value transforms. Richard Newman 2016-08-15 13:31:21 -0700
  • 29d409be64 Tag values with value type tags in SQLite. Nick Alexander 2016-08-05 18:41:49 -0700
  • b4e5c88d6a Add d/q; make query minimally schema aware. Nick Alexander 2016-08-05 17:58:46 -0700
  • 65ed0976dd Extract IEncodeSQLite protocol and type-aware (but not schema-aware) <-SQLite factory. Nick Alexander 2016-08-05 17:57:37 -0700
  • 3e04695ab6 Raise a specific error when trying to transact invalid sequences. Richard Newman 2016-08-17 09:45:45 -0700
  • cfe753a3bd Add d/{ident,entid} for mapping between keyword idents and integer entids. Nick Alexander 2016-08-05 13:59:07 -0700
  • d687d4221a Clarify d/<connect. Richard Newman 2016-08-19 09:14:27 -0700
  • 4fd5880a0b Initialize the sqlite connection with WAL and foreign keys. Richard Newman 2016-08-17 11:21:50 -0700
  • f4344fa28a Bump JVM stack size to 4MB and eliminate tiered compilation. Richard Newman 2016-08-19 09:20:50 -0700
  • 1a54cec1ba Use correct view for fulltext+non-fulltext. Richard Newman 2016-08-05 16:29:21 -0700
  • 3f882ebdaa Bump honeysql to 0.8.0, which includes mainline ClojureScript support. Richard Newman 2016-08-05 13:06:42 -0700
  • b1e6ffc91c Example query hacking. Richard Newman 2016-08-04 16:58:59 -0700
  • fc845a9950 Implement basic fulltext binding. r=nalexander Richard Newman 2016-08-04 18:50:34 -0700
  • 57d8796d07 Split out datomish.query.cc so we can implement clause resolution in more than one namespace. r=nalexander Richard Newman 2016-08-04 18:49:31 -0700
  • fc65f268fa Process Function instances in clause handling. r=nalexander Richard Newman 2016-08-04 16:59:37 -0700
  • 4c2230929e Turn Source into a protocol. Allow source->from to switch on attribute. r=nalexander Richard Newman 2016-08-04 16:40:03 -0700
  • 696ae59570 Example query hacking. rnewman/fulltext-parse Richard Newman 2016-08-04 18:55:06 -0700
  • 753fc859b1 Implement basic fulltext binding. Richard Newman 2016-08-04 18:54:50 -0700
  • 5f04a48c2a Add explicit fts-table to source. Richard Newman 2016-08-04 18:50:34 -0700
  • 3058c43c70 Split out datomish.query.cc so we can implement clause resolution in more than one namespace. Richard Newman 2016-08-04 18:49:31 -0700
  • c948902c52 Follow-up: Extract datomish.transact.explode. transact-rewrite Nick Alexander 2016-08-04 17:54:50 -0700
  • d8c976c3ad Follow-up: split the monolith! Nick Alexander 2016-08-04 17:40:38 -0700
  • dc3cef985b Part 1: process Function instances. Richard Newman 2016-08-04 16:59:37 -0700
  • 2faa0b1ac6 Notes on parsing functions. Richard Newman 2016-08-04 16:58:59 -0700
  • d5e3716eba Turn Source into a protocol. Allow source->from to switch on attribute. rnewman/source-switcher Richard Newman 2016-08-04 16:40:03 -0700
  • 1853d57cba Follow-up: extract datomish.transact.bootstrap. Nick Alexander 2016-08-04 16:36:48 -0700
  • 73b155cfdc Follow-up: don't accept schema when creating DB. Nick Alexander 2016-08-04 16:33:26 -0700
  • 52af06ce28 Follow-up: lift in-transaction! to DB; make transactions exclusive. Nick Alexander 2016-08-04 16:27:36 -0700
  • f408cfd314 Follow-up: lift helpers to IDB. Nick Alexander 2016-08-04 16:20:48 -0700
  • 65d71a2598 Review comment: use :quoting :ansi parameter to honeysql/format. Nick Alexander 2016-08-04 15:36:57 -0700
  • 9c2d81b9c4 Review comments: update SQLite schema definitions. Nick Alexander 2016-08-04 15:05:00 -0700
  • 6a01885dff Review comment: simplify equality. Nick Alexander 2016-08-04 14:51:17 -0700
  • c344de665e Review comments: lift (schema db) in a few places. Nick Alexander 2016-08-04 14:50:05 -0700
  • 5ece60e3e9 Review comment: be more strict in lookup-ref?. Nick Alexander 2016-08-04 14:45:41 -0700
  • 44db8116bf Handle nested maps, sequences in maps, and reverse references. Nick Alexander 2016-08-04 14:01:11 -0700
  • d9a8cb0d6a Don't accept user-provided tx values. Nick Alexander 2016-08-04 10:04:15 -0700
  • 38545f6efc Add :tx and :txInstant to TxReport; accept :db/tx in transactor; allow to set :db/txInstant. Nick Alexander 2016-08-03 20:24:02 -0700
  • 417ae1ed92 Allow false; fail if too many components in vector given. Nick Alexander 2016-08-03 17:02:20 -0700
  • f25838a1eb Support :db/fulltext true. Nick Alexander 2016-08-03 15:42:04 -0700
  • 13f33a4915 Unify test pattern around "(... -after tx0)". Nick Alexander 2016-08-03 15:41:40 -0700
  • 296c9cb436 Bootstrap DB schema; persist and restore schema from materialized views. Nick Alexander 2016-08-03 08:47:55 -0700
  • 5d271454ac Don't replace keyword idents if the underlying field is itself :db.type/keyword. Nick Alexander 2016-08-02 17:35:05 -0700
  • a1e3158eac Add some structure and value checking. Nick Alexander 2016-07-29 18:09:26 -0700
  • 6a8739bd2f Accept new schema fragments via :db.part/db :db.install/attribute. Nick Alexander 2016-07-29 16:10:07 -0700
  • 9497d69b44 Respect :db/unique constraints; test upserts. Nick Alexander 2016-07-28 15:30:46 -0700
  • 80742242e2 Fix cljs Nick Alexander 2016-07-28 14:47:43 -0700
  • 7a90c43a5a Map valueTypes to SQLite encodings. Nick Alexander 2016-07-27 21:15:57 -0700
  • 43423b7d0a Validate value types. Nick Alexander 2016-07-27 17:07:05 -0700
  • bceee3b5fb Re-throw errors in Clojure, for easier debugging. Nick Alexander 2016-07-27 15:50:42 -0700
  • 661e7ed123 Allow to add new :db/ident mappings. Nick Alexander 2016-07-27 14:30:01 -0700
  • fbd5863921 Resolve lookup-refs. Nick Alexander 2016-07-27 14:29:51 -0700
  • baec3815b0 Implement transactions. Nick Alexander 2016-07-27 14:29:16 -0700
  • 0c51cb6236 Pre: Catch Throwable, not Exception. Nick Alexander 2016-07-27 08:55:45 -0700
  • 2c1745fa3b Add notes about necessary SQLite options. Richard Newman 2016-08-04 13:45:38 -0700
  • 8a77dcd8f0 Implement simple 'or' clauses. r=nalexander Richard Newman 2016-07-26 16:46:16 -0700
  • 1ad67a03eb Add tests and comments for clause ordering. Richard Newman 2016-07-26 11:19:51 -0700
  • feaca75a74 Add tests for joins and not-clauses. Richard Newman 2016-07-26 10:51:13 -0700
  • 72f7c8e1a3 Fix test-raise. Richard Newman 2016-07-26 10:50:55 -0700
  • a5556637e8 Add a table alias function to Source, allowing us to mock alias generation. Richard Newman 2016-07-26 10:50:40 -0700
  • 5e1648b05f Remove a duplicate definition of context->sql-string. Richard Newman 2016-07-26 10:50:10 -0700
  • 8633efc6be Fix exec-repl to build in cljs. Richard Newman 2016-07-26 10:49:43 -0700
  • d9cff5fa3c Hacking on exec-repl. Richard Newman 2016-07-25 09:05:43 -0700
  • 42361c1e5e Implement negation, predicates, external scalar bindings, <?q. r=nalexander Richard Newman 2016-07-19 22:38:52 -0700
  • 3a4b687921 Hacking on exec-repl. rnewman/negation Richard Newman 2016-07-25 09:05:43 -0700
  • 513f23c45c Process <transact! in a transaction; add hook for processing :db.part/db changes. Nick Alexander 2016-07-25 08:07:53 -0700
  • 96caadb189 Get execution to a point where we can run (<?q db find args). Richard Newman 2016-07-21 18:59:11 -0700
  • ae0dac2817 Propagate external scalar bindings consumed from the argument list when generating SQL. Richard Newman 2016-07-20 14:55:22 -0700
  • fbd8c0bfbb Always SELECT DISTINCT. Richard Newman 2016-07-20 14:25:24 -0700
  • 6b4f3cb396 Add TODO about external bindings. Richard Newman 2016-07-20 12:25:33 -0700
  • cddd72e283 Implement simple predicates, including as the only thing in a 'not' clause. Richard Newman 2016-07-20 12:21:26 -0700
  • 345cd9a023 Queries containing 'not' can now be translated to SQL. Richard Newman 2016-07-20 11:01:12 -0700
  • e4f29ea10b Broad hacking to get the beginnings of negation and arbitrary clause combinations to work. Richard Newman 2016-07-19 22:38:52 -0700
  • 9ae9a0572b Pass a Context into query. Nick Alexander 2016-07-15 12:45:50 -0700