Commit Graph

285 Commits

Author SHA1 Message Date
7cc1a358f5 Fix a documents indexing bug and add a test 2020-10-30 12:14:25 +01:00
99da69c85f Introduce the prepare_for_closing Index method 2020-10-30 11:46:14 +01:00
222063b19d Introduce the Index path method 2020-10-30 11:46:00 +01:00
085d3b9d94 Update heed to 0.10.0 2020-10-30 11:42:00 +01:00
a30206a665 Prefer using iterator put_current instead of a get put method 2020-10-30 11:13:45 +01:00
e63fdf2b22 Move the heed env into the index itself to ease the usage of the library 2020-10-30 10:56:35 +01:00
b5d52b6b45 Prefer using a smallstr instead of a real String to reduce allocations 2020-10-29 14:32:32 +01:00
40993a0d25 Fix an indexing process bug, where documents were not written in order 2020-10-29 14:20:03 +01:00
855a251489 Enable the clear documents optimization that wasn't working due to a bug 2020-10-29 13:52:48 +01:00
1228c2948d Add a comment about the ClearDocuments operation in the DeleteDocuments 2020-10-28 11:17:36 +01:00
98fc24cbdf Bump heed to fix a prefix iter bug 2020-10-28 10:55:21 +01:00
d6338af766 Improve documents deletion by iterating over all the word pair positions 2020-10-27 18:50:09 +01:00
3889d956d9 Introduce the UpdateBuilder and use it in the HTTP routes 2020-10-27 18:47:58 +01:00
5c62fbb6a8 Move the IndexDocuments update into its own module 2020-10-26 12:21:13 +01:00
8f76ec97c0 Move the DeleteDocuments update into its own module 2020-10-26 11:01:00 +01:00
92ef1faa97 Move the ClearDocuments update into its own module 2020-10-26 10:58:17 +01:00
1e1821f002 Introduce the merge_two_obkv function to merge documents on update 2020-10-26 10:55:07 +01:00
60347a5483 Move the AvailableDocumentsIds iterator into the update module 2020-10-26 10:53:23 +01:00
b14cca2ad9 Introduce the UpdateBuilder type along with some update operations 2020-10-25 18:32:01 +01:00
adacc7977d Make the Index return default values when value don't exist 2020-10-25 18:30:24 +01:00
a7a4984175 Introduce the Transform type into the indexing system 2020-10-24 17:06:09 +02:00
b44b04d25b Serialize the CSV record values as JSON strings 2020-10-24 14:43:46 +02:00
656a851830 Introduce the Transform struct transforming CSVs
This allows us to:
  - transform a CSV, a JSON or a JSON lines data type into the same
    Grenad x Obkv streamable data type and creates the new FieldsIdsMap.
  - Extract all the documents user ids in advance to be able to delete
    the existing documents before re-indexing them.
  - Keep the last documents with the same user id avoiding duplicates
    in the same request.
2020-10-24 13:37:38 +02:00
8d82e37ec0 Introduce the AvailableDocumentsIds iterator 2020-10-23 12:07:01 +02:00
2a4cd81c86 Add documentation to the Index methods 2020-10-22 15:44:12 +02:00
566a7c3039 Make the FieldsIdsMap serialization more stable by using a BTreeMap 2020-10-22 14:53:20 +02:00
9133f38138 Introduce the FieldsIdsMap type 2020-10-22 12:56:35 +02:00
802e925fd7 Switch to a JSON protocol for the front page 2020-10-21 18:26:29 +02:00
5caf523fd9 Move the Index to its own module 2020-10-21 15:55:48 +02:00
2210818114 Introduce the obkv heed codec 2020-10-21 15:51:48 +02:00
f6eecb855e Send a basic progressing status to the updates front page 2020-10-21 15:38:28 +02:00
4eeeccb9cd Change the UpdateStore to have different processed and pending meta types 2020-10-21 13:52:15 +02:00
16ab3e02a9 Change the UpdateStore internal meta serializer 2020-10-21 13:42:49 +02:00
f948a03be2 Optimise the merge functions to avoid allocations 2020-10-20 16:40:50 +02:00
cde8478388 Replace the panic in the merge function by actual errors 2020-10-20 16:19:07 +02:00
8ed8abb9df Introduce an append-only indexing system 2020-10-20 15:00:58 +02:00
a122d3d466 Export the indexing part into a module 2020-10-20 14:22:09 +02:00
eb92e72e6c Updates can send progress update status 2020-10-20 12:28:10 +02:00
341046c96c Remove the js map file from the filesize.js script 2020-10-20 12:20:42 +02:00
3a934b7020 Split the update attributes on the updates front page 2020-10-20 12:19:48 +02:00
03ca1ff634 Make the updates page interactive 2020-10-20 12:09:38 +02:00
35c9a3c558 Brodacast the updates infos to every ws clients 2020-10-20 11:19:34 +02:00
56c3a61d83 Introduce a new updates page 2020-10-19 19:57:15 +02:00
871222aebd Introduce some new routes to handle live indexing 2020-10-19 16:06:43 +02:00
d3145be744 Rename the meta UpdateStore method 2020-10-19 14:00:00 +02:00
8bfa43f9a7 Update the iter_metas UpdateStore method 2020-10-19 13:58:08 +02:00
65e32fecb1 Move the binaries into one with subcommands 2020-10-19 13:44:17 +02:00
ff389f1270 Update heed-types to 0.7.1 2020-10-19 11:52:59 +02:00
5b4eda670b Add two tests for the UpdateStore 2020-10-18 18:55:09 +02:00
edb8c99fbe Introduce a method to get the meta of an update on the UpdateStore 2020-10-18 17:19:04 +02:00