Tobie Morgan Hitchcock
9deae2c466
Simplify errors
2019-11-28 16:33:09 +00:00
Tobie Morgan Hitchcock
d0d566bbd9
Improve database speed
2019-11-20 13:20:27 +00:00
Tobie Morgan Hitchcock
cca75c70fc
Check if log level is enabled before creating entry
2019-11-18 11:29:40 +00:00
Tobie Morgan Hitchcock
2ee1133a4b
Simplify command line config arguments
2019-06-16 08:08:23 +01:00
Tobie Morgan Hitchcock
b5998496e0
Convert IfelExpression to SubExpression
...
Instead of having separate IfelExpression types, instead make IfelseStatement a subtype of SubExpression, and allow it without brackets.
2019-02-10 23:17:01 +00:00
Tobie Morgan Hitchcock
ef9c73d4d7
Make SQL parser stateless
2019-01-31 12:38:23 +00:00
Tobie Morgan Hitchcock
7c962f7bdc
Add SQL OPTION query statement
2019-01-31 09:47:52 +00:00
Tobie Morgan Hitchcock
e52f0d3243
Implement basic executor caching layer
2018-09-28 22:06:07 +01:00
Tobie Morgan Hitchcock
c8980e2eac
Remove connection wide variables
2018-05-09 23:09:51 +01:00
Tobie Morgan Hitchcock
0615896c0e
Add timeout errors to json output
2018-05-09 22:52:47 +01:00
Tobie Morgan Hitchcock
7f6d1565ff
Enable ability to set a global query timeout duration
2018-05-02 02:42:16 +01:00
Tobie Morgan Hitchcock
9f0ea3ee61
Improve database query logging
2018-05-02 02:32:06 +01:00
Tobie Morgan Hitchcock
47ef2de60f
Prevent concurrent record edits and race conditions
2018-04-24 17:11:12 +01:00
Tobie Morgan Hitchcock
fa1061b3a5
Use query version time from executor not document
2018-04-24 15:57:41 +01:00
Tobie Morgan Hitchcock
27a5f785fd
Change ERR_KV to ERR_EX for ‘record already exists’ errors
2018-04-23 09:12:00 +01:00
Tobie Morgan Hitchcock
cf68ebffb1
Improve DB error message types
2018-04-18 15:27:21 +01:00
Tobie Morgan Hitchcock
bc31140308
Improve live query notification delivery
2018-04-14 19:20:15 +01:00
Tobie Morgan Hitchcock
2a74759a71
Enable IF and RUN statements in MultStatements
2018-04-14 18:36:28 +01:00
Tobie Morgan Hitchcock
6354d0ce2a
Fix comment typos
2018-04-14 18:02:58 +01:00
Tobie Morgan Hitchcock
be832029a7
Remove google and syslog logging
2018-04-05 08:51:44 +01:00
Tobie Morgan Hitchcock
87cf68b213
Don’t log context auth data
2018-02-14 15:48:55 +00:00
Tobie Morgan Hitchcock
dc6a357e26
Enable passing context when beginning a transaction
2018-02-06 17:07:42 +00:00
Tobie Morgan Hitchcock
36e7d8ed3a
Flush websocket notifications correctly
...
Websocket notifications were cleared/flushed regardless of whether individual statements were successful or not.
Now notifications are shifted onto the stack, or removed if the statement is unsuccessful. Once the full query has been processed, all pending notifications are flushed to all websockets (ignoring the current connection frin which th query originated).
2018-01-31 09:15:29 +00:00
Tobie Morgan Hitchcock
19bf0b3e7d
Don’t ignore errors from the data layer
...
If the data layer encountered an error when committing a transaction, then the error was ignored. Now all errors from the data layer which occur when cancelling or committing a transaction are passed to the end-user and displayed accordingly.
2018-01-10 11:33:26 +00:00
Tobie Morgan Hitchcock
548995e935
Cancel the context timeout AFTER errors are checked
2017-12-06 13:21:12 +00:00
Tobie Morgan Hitchcock
4ff14caace
Add initial path following implementation
2017-11-28 01:20:30 +00:00
Tobie Morgan Hitchcock
37e015b482
Only return an executor to the pool once
...
The executor was being returned to the pool twice, which was resulting in nil interface{} errors when creating new executors concurrently, as the transaction would not be set properly.
2017-11-24 01:45:56 +00:00
Tobie Morgan Hitchcock
43d841dacc
Full update of the DB package
2017-11-16 20:53:39 +00:00
Tobie Morgan Hitchcock
b68c33835e
Ensure all db.executor methods are private
2017-02-28 00:17:10 +00:00