[Groonga-commit] groonga/groonga at 72f5c93 [master] Support offline index construction for reference vector

Back to archive index

Kouhei Sutou null+****@clear*****
Tue Jun 30 16:59:06 JST 2015


Kouhei Sutou	2015-06-30 16:59:06 +0900 (Tue, 30 Jun 2015)

  New Revision: 72f5c93c958927ca8e939d809500b011a4fe40c5
  https://github.com/groonga/groonga/commit/72f5c93c958927ca8e939d809500b011a4fe40c5

  Message:
    Support offline index construction for reference vector

  Added files:
    test/command/suite/load/index/offline/vector_int32.expected
    test/command/suite/load/index/offline/vector_int32.test
  Modified files:
    lib/ii.c

  Modified: lib/ii.c (+14 -0)
===================================================================
--- lib/ii.c    2015-06-30 14:58:56 +0900 (57769a4)
+++ lib/ii.c    2015-06-30 16:59:06 +0900 (388e056)
@@ -8011,6 +8011,20 @@ grn_ii_buffer_parse(grn_ctx *ctx, grn_ii_buffer *ii_buffer,
           grn_ii_buffer_tokenize(ctx, ii_buffer, rid, sid, 0,
                                  GRN_TEXT_VALUE(&rv), GRN_TEXT_LEN(&rv));
           break;
+        case GRN_UVECTOR :
+          {
+            unsigned int i, size;
+            unsigned int element_size;
+
+            size = grn_uvector_size(ctx, &rv);
+            element_size = grn_uvector_element_size(ctx, &rv);
+            for (i = 0; i < size; i++) {
+              grn_ii_buffer_tokenize(ctx, ii_buffer, rid, sid, 0,
+                                     GRN_BULK_HEAD(&rv) + (element_size * i),
+                                     element_size);
+            }
+          }
+          break;
         case GRN_VECTOR :
           if (rv.u.v.body) {
             int i;

  Added: test/command/suite/load/index/offline/vector_int32.expected (+17 -0) 100644
===================================================================
--- /dev/null
+++ test/command/suite/load/index/offline/vector_int32.expected    2015-06-30 16:59:06 +0900 (08cda1f)
@@ -0,0 +1,17 @@
+table_create Entries TABLE_NO_KEY
+[[0,0.0,0.0],true]
+column_create Entries numbers COLUMN_VECTOR Int32
+[[0,0.0,0.0],true]
+load --table Entries
+[
+["numbers"],
+[[18, 19, 20]],
+[[100, 200]]
+]
+[[0,0.0,0.0],2]
+table_create Numbers TABLE_PAT_KEY Int32
+[[0,0.0,0.0],true]
+column_create Numbers entries_numbers COLUMN_INDEX Entries numbers
+[[0,0.0,0.0],true]
+select Numbers --output_columns _key
+[[0,0.0,0.0],[[[5],[["_key","Int32"]],[18],[19],[20],[100],[200]]]]

  Added: test/command/suite/load/index/offline/vector_int32.test (+14 -0) 100644
===================================================================
--- /dev/null
+++ test/command/suite/load/index/offline/vector_int32.test    2015-06-30 16:59:06 +0900 (260ce4e)
@@ -0,0 +1,14 @@
+table_create Entries TABLE_NO_KEY
+column_create Entries numbers COLUMN_VECTOR Int32
+
+load --table Entries
+[
+["numbers"],
+[[18, 19, 20]],
+[[100, 200]]
+]
+
+table_create Numbers TABLE_PAT_KEY Int32
+column_create Numbers entries_numbers COLUMN_INDEX Entries numbers
+
+select Numbers --output_columns _key
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index