[Groonga-commit] pgroonga/pgroonga at c14c194 [master] jsonb: support object/array type search

Back to archive index

Kouhei Sutou null+****@clear*****
Sun Sep 27 11:12:20 JST 2015


Kouhei Sutou	2015-09-27 11:12:20 +0900 (Sun, 27 Sep 2015)

  New Revision: c14c194c81c7dea42daa0c467de64318e70feb44
  https://github.com/pgroonga/pgroonga/commit/c14c194c81c7dea42daa0c467de64318e70feb44

  Message:
    jsonb: support object/array type search

  Modified files:
    expected/jsonb/element/number/bitmapscan.out
    expected/jsonb/element/number/indexscan.out
    expected/jsonb/value/number/bitmapscan.out
    expected/jsonb/value/number/indexscan.out
    pgroonga.c
    sql/jsonb/element/number/bitmapscan.sql
    sql/jsonb/element/number/indexscan.sql
    sql/jsonb/value/number/bitmapscan.sql
    sql/jsonb/value/number/indexscan.sql

  Modified: expected/jsonb/element/number/bitmapscan.out (+1 -1)
===================================================================
--- expected/jsonb/element/number/bitmapscan.out    2015-09-27 10:58:57 +0900 (975c3e5)
+++ expected/jsonb/element/number/bitmapscan.out    2015-09-27 11:12:20 +0900 (1f7d8fd)
@@ -11,7 +11,7 @@ SET enable_indexscan = off;
 SET enable_bitmapscan = on;
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
  id |   items   
 ----+-----------

  Modified: expected/jsonb/element/number/indexscan.out (+1 -1)
===================================================================
--- expected/jsonb/element/number/indexscan.out    2015-09-27 10:58:57 +0900 (c8dc8a7)
+++ expected/jsonb/element/number/indexscan.out    2015-09-27 11:12:20 +0900 (a63dcc5)
@@ -11,7 +11,7 @@ SET enable_indexscan = on;
 SET enable_bitmapscan = off;
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
  id |   items   
 ----+-----------

  Modified: expected/jsonb/value/number/bitmapscan.out (+1 -1)
===================================================================
--- expected/jsonb/value/number/bitmapscan.out    2015-09-27 10:58:57 +0900 (a650ee4)
+++ expected/jsonb/value/number/bitmapscan.out    2015-09-27 11:12:20 +0900 (9f8accf)
@@ -11,7 +11,7 @@ SET enable_indexscan = off;
 SET enable_bitmapscan = on;
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
  id |     items      
 ----+----------------

  Modified: expected/jsonb/value/number/indexscan.out (+1 -1)
===================================================================
--- expected/jsonb/value/number/indexscan.out    2015-09-27 10:58:57 +0900 (a6fbaf4)
+++ expected/jsonb/value/number/indexscan.out    2015-09-27 11:12:20 +0900 (db07c78)
@@ -11,7 +11,7 @@ SET enable_indexscan = on;
 SET enable_bitmapscan = off;
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
  id |     items      
 ----+----------------

  Modified: pgroonga.c (+2 -0)
===================================================================
--- pgroonga.c    2015-09-27 10:58:57 +0900 (9c37303)
+++ pgroonga.c    2015-09-27 11:12:20 +0900 (529bf5d)
@@ -2377,10 +2377,12 @@ PGrnInsertJSON(JsonbIterator **iter, PGrnInsertJSONData *data)
 			PGrnInsertJSONValue(iter, &value, data);
 			break;
 		case WJB_BEGIN_ARRAY:
+			PGrnInsertJSONValueSet(data, NULL, "array");
 			break;
 		case WJB_END_ARRAY:
 			break;
 		case WJB_BEGIN_OBJECT:
+			PGrnInsertJSONValueSet(data, NULL, "object");
 			break;
 		case WJB_END_OBJECT:
 			break;

  Modified: sql/jsonb/element/number/bitmapscan.sql (+1 -1)
===================================================================
--- sql/jsonb/element/number/bitmapscan.sql    2015-09-27 10:58:57 +0900 (e4544ce)
+++ sql/jsonb/element/number/bitmapscan.sql    2015-09-27 11:12:20 +0900 (09a6a81)
@@ -15,7 +15,7 @@ SET enable_bitmapscan = on;
 
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
 
 DROP TABLE fruits;

  Modified: sql/jsonb/element/number/indexscan.sql (+1 -1)
===================================================================
--- sql/jsonb/element/number/indexscan.sql    2015-09-27 10:58:57 +0900 (7cf95f5)
+++ sql/jsonb/element/number/indexscan.sql    2015-09-27 11:12:20 +0900 (367a7e9)
@@ -15,7 +15,7 @@ SET enable_bitmapscan = off;
 
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
 
 DROP TABLE fruits;

  Modified: sql/jsonb/value/number/bitmapscan.sql (+1 -1)
===================================================================
--- sql/jsonb/value/number/bitmapscan.sql    2015-09-27 10:58:57 +0900 (84b4e85)
+++ sql/jsonb/value/number/bitmapscan.sql    2015-09-27 11:12:20 +0900 (af0dee6)
@@ -15,7 +15,7 @@ SET enable_bitmapscan = on;
 
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
 
 DROP TABLE fruits;

  Modified: sql/jsonb/value/number/indexscan.sql (+1 -1)
===================================================================
--- sql/jsonb/value/number/indexscan.sql    2015-09-27 10:58:57 +0900 (862fd83)
+++ sql/jsonb/value/number/indexscan.sql    2015-09-27 11:12:20 +0900 (72d0d50)
@@ -15,7 +15,7 @@ SET enable_bitmapscan = off;
 
 SELECT id, items
   FROM fruits
- WHERE items @@ 'number <= 100'
+ WHERE items @@ 'type == "number" && number <= 100'
  ORDER BY id;
 
 DROP TABLE fruits;
-------------- next part --------------
HTML����������������������������...
下載 



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