Skip to content

Commit

Permalink
test: add drilldowns[LABEL].columns[NAME].value test case without cache
Browse files Browse the repository at this point in the history
When the value of drilldowns[LABEL].columns[NAME].value parameter is
changed, Groonga returns result without using cache.
  • Loading branch information
kenhys committed Apr 17, 2017
1 parent eb8f465 commit 365542e
Show file tree
Hide file tree
Showing 2 changed files with 286 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,216 @@
plugin_register sharding
[[0,0.0,0.0],true]
table_create Items TABLE_HASH_KEY ShortText
[[0,0.0,0.0],true]
column_create Items price COLUMN_SCALAR UInt32
[[0,0.0,0.0],true]
table_create Logs_20170315 TABLE_NO_KEY
[[0,0.0,0.0],true]
column_create Logs_20170315 timestamp COLUMN_SCALAR Time
[[0,0.0,0.0],true]
column_create Logs_20170315 items COLUMN_VECTOR Items
[[0,0.0,0.0],true]
table_create Logs_20170316 TABLE_NO_KEY
[[0,0.0,0.0],true]
column_create Logs_20170316 timestamp COLUMN_SCALAR Time
[[0,0.0,0.0],true]
column_create Logs_20170316 items COLUMN_VECTOR Items
[[0,0.0,0.0],true]
table_create Logs_20170317 TABLE_NO_KEY
[[0,0.0,0.0],true]
column_create Logs_20170317 timestamp COLUMN_SCALAR Time
[[0,0.0,0.0],true]
column_create Logs_20170317 items COLUMN_VECTOR Items
[[0,0.0,0.0],true]
load --table Items
[
{"_key": "Book", "price": 1000},
{"_key": "Note", "price": 1000},
{"_key": "Box", "price": 500},
{"_key": "Pen", "price": 500},
{"_key": "Food", "price": 500},
{"_key": "Drink", "price": 300}
]
[[0,0.0,0.0],6]
load --table Logs_20170315
[
{"timestamp": "2017/03/15 00:00:00", "items": ["Book", "Note", "Box", "Pen"]},
{"timestamp": "2017/03/15 01:00:00", "items": ["Food", "Drink", "Pen"]}
]
[[0,0.0,0.0],2]
load --table Logs_20170316
[
{"timestamp": "2017/03/16 10:00:00", "items": ["Pen", "Note", "Food", "Drink"]},
{"timestamp": "2017/03/16 11:00:00", "items": ["Note", "Box"]}
]
[[0,0.0,0.0],2]
load --table Logs_20170317
[
{"timestamp": "2017/03/17 20:00:00", "items": ["Food", "Book"]},
{"timestamp": "2017/03/17 20:00:00", "items": ["Drink", "Note"]}
]
[[0,0.0,0.0],2]
logical_select Logs --shard_key timestamp --output_columns _id --limit 0 --drilldowns[item].keys items --drilldowns[item].sort_keys price --drilldowns[item].output_columns _key,_nsubrecs,price,price_with_tax --drilldowns[item].columns[price_with_tax].stage initial --drilldowns[item].columns[price_with_tax].type UInt32 --drilldowns[item].columns[price_with_tax].flags COLUMN_SCALAR --drilldowns[item].columns[price_with_tax].value 'price * 1.05'
[
[
0,
0.0,
0.0
],
[
[
[
6
],
[
[
"_id",
"UInt32"
]
]
],
{
"item": [
[
6
],
[
[
"_key",
"ShortText"
],
[
"_nsubrecs",
"Int32"
],
[
"price",
"UInt32"
],
[
"price_with_tax",
"UInt32"
]
],
[
"Drink",
3,
300,
315
],
[
"Food",
3,
500,
525
],
[
"Pen",
3,
500,
525
],
[
"Box",
2,
500,
525
],
[
"Book",
2,
1000,
1050
],
[
"Note",
4,
1000,
1050
]
]
}
]
]
logical_select Logs --shard_key timestamp --output_columns _id --limit 0 --drilldowns[item].keys items --drilldowns[item].sort_keys price --drilldowns[item].output_columns _key,_nsubrecs,price,price_with_tax --drilldowns[item].columns[price_with_tax].stage initial --drilldowns[item].columns[price_with_tax].type UInt32 --drilldowns[item].columns[price_with_tax].flags COLUMN_SCALAR --drilldowns[item].columns[price_with_tax].value 'price * 1.08'
[
[
0,
0.0,
0.0
],
[
[
[
6
],
[
[
"_id",
"UInt32"
]
]
],
{
"item": [
[
6
],
[
[
"_key",
"ShortText"
],
[
"_nsubrecs",
"Int32"
],
[
"price",
"UInt32"
],
[
"price_with_tax",
"UInt32"
]
],
[
"Drink",
3,
300,
324
],
[
"Food",
3,
500,
540
],
[
"Pen",
3,
500,
540
],
[
"Box",
2,
500,
540
],
[
"Book",
2,
1000,
1080
],
[
"Note",
4,
1000,
1080
]
]
}
]
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
#@on-error omit
plugin_register sharding
#@on-error default

table_create Items TABLE_HASH_KEY ShortText
column_create Items price COLUMN_SCALAR UInt32

table_create Logs_20170315 TABLE_NO_KEY
column_create Logs_20170315 timestamp COLUMN_SCALAR Time
column_create Logs_20170315 items COLUMN_VECTOR Items

table_create Logs_20170316 TABLE_NO_KEY
column_create Logs_20170316 timestamp COLUMN_SCALAR Time
column_create Logs_20170316 items COLUMN_VECTOR Items

table_create Logs_20170317 TABLE_NO_KEY
column_create Logs_20170317 timestamp COLUMN_SCALAR Time
column_create Logs_20170317 items COLUMN_VECTOR Items

load --table Items
[
{"_key": "Book", "price": 1000},
{"_key": "Note", "price": 1000},
{"_key": "Box", "price": 500},
{"_key": "Pen", "price": 500},
{"_key": "Food", "price": 500},
{"_key": "Drink", "price": 300}
]

load --table Logs_20170315
[
{"timestamp": "2017/03/15 00:00:00", "items": ["Book", "Note", "Box", "Pen"]},
{"timestamp": "2017/03/15 01:00:00", "items": ["Food", "Drink", "Pen"]}
]

load --table Logs_20170316
[
{"timestamp": "2017/03/16 10:00:00", "items": ["Pen", "Note", "Food", "Drink"]},
{"timestamp": "2017/03/16 11:00:00", "items": ["Note", "Box"]}
]

load --table Logs_20170317
[
{"timestamp": "2017/03/17 20:00:00", "items": ["Food", "Book"]},
{"timestamp": "2017/03/17 20:00:00", "items": ["Drink", "Note"]}
]

logical_select Logs \
--shard_key timestamp \
--output_columns _id \
--limit 0 \
--drilldowns[item].keys items \
--drilldowns[item].sort_keys price \
--drilldowns[item].output_columns _key,_nsubrecs,price,price_with_tax \
--drilldowns[item].columns[price_with_tax].stage initial \
--drilldowns[item].columns[price_with_tax].type UInt32 \
--drilldowns[item].columns[price_with_tax].flags COLUMN_SCALAR \
--drilldowns[item].columns[price_with_tax].value 'price * 1.05'

logical_select Logs \
--shard_key timestamp \
--output_columns _id \
--limit 0 \
--drilldowns[item].keys items \
--drilldowns[item].sort_keys price \
--drilldowns[item].output_columns _key,_nsubrecs,price,price_with_tax \
--drilldowns[item].columns[price_with_tax].stage initial \
--drilldowns[item].columns[price_with_tax].type UInt32 \
--drilldowns[item].columns[price_with_tax].flags COLUMN_SCALAR \
--drilldowns[item].columns[price_with_tax].value 'price * 1.08'

0 comments on commit 365542e

Please sign in to comment.