isomorfeus-ferret 0.14.4 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +56 -6
  3. data/ext/isomorfeus_ferret_ext/extconf.rb +19 -1
  4. data/ext/isomorfeus_ferret_ext/frb_analysis.c +0 -4
  5. data/ext/isomorfeus_ferret_ext/frb_index.c +0 -4
  6. data/ext/isomorfeus_ferret_ext/frb_lazy_doc.c +4 -0
  7. data/ext/isomorfeus_ferret_ext/frb_qparser.c +1 -6
  8. data/ext/isomorfeus_ferret_ext/frb_search.c +0 -5
  9. data/ext/isomorfeus_ferret_ext/frb_store.c +66 -4
  10. data/ext/isomorfeus_ferret_ext/frb_utils.c +0 -4
  11. data/ext/isomorfeus_ferret_ext/frt_compound_io.c +4 -4
  12. data/ext/isomorfeus_ferret_ext/frt_except.c +11 -11
  13. data/ext/isomorfeus_ferret_ext/frt_fs_store.c +62 -88
  14. data/ext/isomorfeus_ferret_ext/frt_hash.c +32 -70
  15. data/ext/isomorfeus_ferret_ext/frt_ind.c +20 -20
  16. data/ext/isomorfeus_ferret_ext/frt_ind.h +1 -1
  17. data/ext/isomorfeus_ferret_ext/frt_index.c +78 -78
  18. data/ext/isomorfeus_ferret_ext/frt_index.h +11 -11
  19. data/ext/isomorfeus_ferret_ext/frt_mdbx_store.c +691 -0
  20. data/ext/isomorfeus_ferret_ext/frt_q_parser.c +4 -4
  21. data/ext/isomorfeus_ferret_ext/frt_ram_store.c +9 -9
  22. data/ext/isomorfeus_ferret_ext/frt_search.c +0 -3
  23. data/ext/isomorfeus_ferret_ext/frt_search.h +1 -1
  24. data/ext/isomorfeus_ferret_ext/frt_sort.c +2 -2
  25. data/ext/isomorfeus_ferret_ext/frt_store.c +6 -8
  26. data/ext/isomorfeus_ferret_ext/frt_store.h +43 -21
  27. data/ext/isomorfeus_ferret_ext/frt_threading.h +0 -16
  28. data/ext/isomorfeus_ferret_ext/isomorfeus_ferret.c +0 -9
  29. data/ext/isomorfeus_ferret_ext/mdbx.c +33632 -0
  30. data/ext/isomorfeus_ferret_ext/mdbx.h +5495 -0
  31. data/ext/isomorfeus_ferret_ext/test.c +20 -18
  32. data/ext/isomorfeus_ferret_ext/test_mdbx_store.c +19 -0
  33. data/ext/isomorfeus_ferret_ext/test_store.c +4 -8
  34. data/ext/isomorfeus_ferret_ext/test_threading.c +2 -2
  35. data/ext/isomorfeus_ferret_ext/tests_all.h +2 -0
  36. data/lib/isomorfeus/ferret/version.rb +1 -1
  37. metadata +9 -5
@@ -242,25 +242,25 @@ FrtTermInfo *frt_te_get_ti(struct FrtTermEnum *te);
242
242
  /* FrtSegmentTermIndex */
243
243
 
244
244
  typedef struct FrtSegmentTermIndex {
245
- frt_off_t index_ptr;
246
- frt_off_t ptr;
245
+ frt_off_t index_ptr;
246
+ frt_off_t ptr;
247
247
  int index_cnt;
248
248
  int size;
249
249
  char **index_terms;
250
250
  int *index_term_lens;
251
251
  FrtTermInfo *index_term_infos;
252
- frt_off_t *index_ptrs;
252
+ frt_off_t *index_ptrs;
253
253
  } FrtSegmentTermIndex;
254
254
 
255
255
  /* FrtSegmentFieldIndex */
256
256
 
257
257
  typedef struct FrtSegmentFieldIndex {
258
- frt_mutex_t mutex;
259
- int skip_interval;
260
- int index_interval;
258
+ pthread_mutex_t mutex;
259
+ int skip_interval;
260
+ int index_interval;
261
261
  frt_off_t index_ptr;
262
- FrtTermEnum *index_te;
263
- FrtHash *field_dict;
262
+ FrtTermEnum *index_te;
263
+ FrtHash *field_dict;
264
264
  } FrtSegmentFieldIndex;
265
265
 
266
266
  /* FrtSegmentTermEnum */
@@ -658,9 +658,9 @@ struct FrtIndexReader {
658
658
  FrtFieldInfos *fis;
659
659
  FrtHash *cache;
660
660
  FrtHash *field_index_cache;
661
- frt_mutex_t field_index_mutex;
661
+ pthread_mutex_t field_index_mutex;
662
662
  frt_uchar *fake_norms;
663
- frt_mutex_t mutex;
663
+ pthread_mutex_t mutex;
664
664
  bool has_changes : 1;
665
665
  bool is_stale : 1;
666
666
  bool is_owner : 1;
@@ -792,7 +792,7 @@ extern void frt_dw_reset_postings(FrtHash *postings);
792
792
 
793
793
  struct FrtIndexWriter {
794
794
  FrtConfig config;
795
- frt_mutex_t mutex;
795
+ pthread_mutex_t mutex;
796
796
  FrtStore *store;
797
797
  FrtAnalyzer *analyzer;
798
798
  FrtSegmentInfos *sis;