Commit graph

42 commits

Author SHA1 Message Date
Tobie Morgan Hitchcock
ca6d956a49 Remove opentracing and profiling 2021-08-07 09:26:32 +01:00
Tobie Morgan Hitchcock
410a0e1769 Use correct trace span name 2020-12-09 21:19:13 +00:00
Tobie Morgan Hitchcock
5c84421028 Add programme tracing using Google Cloud 2020-11-27 12:57:31 +00:00
Tobie Morgan Hitchcock
66314ef074 Remove pre-executing query logging 2020-11-26 21:37:00 +00:00
Tobie Morgan Hitchcock
cc5ba019e8 Add SQL logging before statement is run 2020-11-24 01:05:37 +00:00
Tobie Morgan Hitchcock
511cbbca11 Add query timeout functionality 2020-09-22 10:46:00 +01:00
Tobie Morgan Hitchcock
8a8b8811c9 Don’t display stack trace for simple errors 2020-03-28 09:59:11 +00:00
Tobie Morgan Hitchcock
f3ab0596f5 No need to fetch statement duration more than once 2020-03-07 09:55:25 +00:00
Tobie Morgan Hitchcock
cbf0ec6f41 Ensure transactions are cleared when completed 2020-02-17 13:47:09 +00:00
Tobie Morgan Hitchcock
2ab27f1cd2 Reset transaction on executor instantiation 2019-12-03 11:23:48 +00:00
Tobie Morgan Hitchcock
412b15cc11 Clear executor transaction 2019-12-03 10:07:19 +00:00
Tobie Morgan Hitchcock
a675790fef Check that txn is closed 2019-11-30 01:50:19 +00:00
Tobie Morgan Hitchcock
d0e1fd90fd Add error stack to error log 2019-11-29 10:50:13 +00:00
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
Renamed from db/exec.go (Browse further)