39 Commits

Author SHA1 Message Date
kishorenc
bb530f259e Handle concurrent access of DB handle. 2021-02-12 19:42:40 +05:30
kishorenc
e2882c5828 Fix race condition in snapshot restoration. 2021-02-12 19:10:57 +05:30
kishorenc
1b01de0c0c Housekeeping tasks. 2020-09-07 21:25:04 +05:30
kishorenc
1ab9b65098 Force use of jemalloc via static linking. 2020-07-21 17:36:27 +05:30
kishorenc
66f1f5d01f More efficient store contains. 2020-07-14 20:55:10 +05:30
kishorenc
29b4225461 API Key management. 2020-04-27 21:43:24 +05:30
kishorenc
8829c5aebc Allow customization of peering address.
This is an optional argument since Typesense automatically tries to bind on an internal IP. One needs to specify this only when there are multiple internal IPs.
2020-03-26 17:39:42 +05:30
kishorenc
e057b64d9d Migrate to butil logger. 2020-03-20 16:49:26 +05:30
kishorenc
c982335bdd Fix tests. 2020-03-17 07:53:41 +05:30
kishorenc
a52ec80999 Handle presence/absence of snapshot.
Still need to handle import of raw db data into snapshot.
2020-03-15 16:11:29 +05:30
kishorenc
b81ce1062d Basic write replication is working. 2020-03-11 22:31:17 +05:30
kishorenc
cf26a16903 Improve logging for replication errors. 2019-11-20 20:05:51 +05:30
kishorenc
5328509637 When replication begins, ensure that it starts from sequence number 0. 2019-10-18 07:50:48 +05:30
kishorenc
4d53a62784 Log a more meaningful error message and exit when another instance is started off the same data directory. 2019-10-06 09:35:10 +05:30
Kishore Nallan
3275ea877d Refactor - move more implementation code away from headers. 2018-08-03 10:35:07 +05:30
Kishore Nallan
3cdeff7814 Snappy compression is enabled by default but setting it explicitly nevertheless. 2018-05-08 07:52:29 +05:30
Kishore Nallan
4d22698cc5 Minor logging changes. 2018-03-30 16:26:35 +05:30
Kishore Nallan
0f9c97eaf3 Use LOG(ERR) where appropriate. 2018-03-07 09:35:09 +05:30
Kishore Nallan
b451a559e0 Improve error message logged when a replica is pointed to an old master.
In such a case, the WAL entries would have expired - logging that explicitly now.
2018-02-03 10:05:24 -05:00
Kishore Nallan
50ba0a02ce Use custom ERR logging level. 2018-02-03 07:42:13 -05:00
Kishore Nallan
0f7530ed13 Serialize and deserialize next sequence id properly instead of string encoding. 2018-02-02 19:02:19 -05:00
Kishore Nallan
b73dbebd2d Handle scenarios when store get fails or doesn't find data when it should have. 2018-02-02 18:21:51 -05:00
Kishore Nallan
6b37d43fd7 Use a proper logger for logging! 2018-02-02 08:22:23 -05:00
Kishore Nallan
13f4c72827 Use rocksdb batch put for atomic insertion. 2018-01-28 14:29:07 -05:00
Kishore Nallan
21d3de6145 Improve handling of replication errors / edge cases. 2017-12-24 21:03:30 +05:30
Kishore Nallan
3a9743aa90 Parameterize API key used by replication. 2017-12-16 22:12:03 +05:30
Kishore Nallan
58a10877ee Basics of background replication.
Supports inserts. Deletion will be tackled next.
2017-09-14 09:58:44 +05:30
Kishore Nallan
6a465a0289 API for fetching all transactions from a given transaction sequence number.
Relying on RocksDB underlying APIs for that. The updates are sent in a Base64 encoding in the JSON response.
2017-08-31 09:42:11 +05:30
Kishore Nallan
3478aef573 API for deleting a document by ID. 2017-05-17 20:31:24 +05:30
Kishore Nallan
8850f8b169 Patch RocksDB build to ensure that it links against only specific libraries. 2017-04-07 08:58:29 +05:30
Kishore Nallan
cab0b36699 Skeleton for filter support. 2017-02-02 09:20:06 +05:30
Kishore Nallan
22816ea0a0 Test for dropping a collection. 2017-01-27 06:36:22 -06:00
Kishore Nallan
216ac7997a Restore in-memory index on restart. 2017-01-24 22:13:49 -05:00
Kishore Nallan
b7654baa74 Persist collection's next_seq_id. 2017-01-09 22:14:06 +05:30
Kishore Nallan
2f08eca12e Initial sketch for persisting meta information about collections. 2017-01-08 19:47:17 +05:30
Kishore Nallan
c8eba7cf11 Adopt sequence ID as generated document ID, instead of using UUID. 2016-10-08 21:17:33 +05:30
Kishore Nallan
596430c036 Remove entry from rocksdb and art when required. 2016-10-05 21:24:40 +05:30
Kishore Nallan
e777afc97f API for removing a document from index. 2016-09-24 18:08:57 +05:30
Kishore Nallan
44da808f16 RocksDB based persistence. 2016-08-28 22:04:58 +05:30