Groonga 9.0.4 has been released
Groonga 9.0.4 has been released!
How to install: Install
Changes
Here are important changes in this release:
-
Added support for array literal with multiple elements.
-
Added support equivalence operation of a vector.
-
logical_range_filter Increase outputting logs into query log.
-
grndb Added support new option
--since
-
query Added
default_operator
. -
[optimizer] Fix a bug that execution error when specified multiple filter conditions and like
xxx.yyy=="keyword"
. -
Added missing LICENSE files in Groonga package for Windows(VC++ version).
-
Added UCRT runtime into Groonga package for Windows(VC++ version).
-
window_function Fix a memory leak.
- This occurs when multiple windows with sort keys are used.
Added support for array literal with multiple elements.
We can use array literal with multiple elements into filter
condition as below.
table_create Values TABLE_NO_KEY
column_create Values numbers COLUMN_VECTOR Int32
load --table Values
[
{"numbers": [2, 1, 3]},
{"numbers": [2, 3, 4]},
{"numbers": [8, 9, -1]}
]
select Values \
--filter 'numbers == [2, 3, 4]' \
--output_columns 'numbers'
[[0,0.0,0.0],[[[1],[["numbers","Int32"]],[[2,3,4]]]]]
Added support equivalence operation of a vector.
We can use equivalencs operation for a vector as below.
table_create Values TABLE_NO_KEY
column_create Values numbers COLUMN_VECTOR Int32
load --table Values
[
{"numbers": [2, 1, 3]},
{"numbers": [2, 3, 4]},
{"numbers": [8, 9, -1]}
]
select Values \
--filter 'numbers == [2, 3, 4]' \
--output_columns 'numbers'
[[0,0.0,0.0],[[[1],[["numbers","Int32"]],[[2,3,4]]]]]
logical_range_filter Increase outputting logs into query log.
logical_range_filter
command comes to output a log for below timing.
- After filtering by
logical_range_filter
. - After sorting by
logical_range_filter
. - After applying dynamic column.
- After output results.
We can see how much has been finished this command by this feature.
grndb Added support new option --since
We can specify a scope of an inspection.
We can specify the modified time as ISO 8601 format or -NUNIT format such as -3days or -2.5weeks format.
Here is an example that specifies –since option in ISO 8601 format:
% grmdb check --since=2019-06-24T18:16:22 /var/lib/groonga/db/db
In above example, the objects which are modified after 2019-06-24T18:16:22 are checked.
Here is an example that specifies –since option in -NUNIT format:
% grmdb check --since=-7d /var/lib/groonga/db/db
In above example, the objects which are modified in recent 7 days are checked.
Please also refer to grndb#since.
query Added default_operator
.
We can customize operator when "keyword1 keyword2". "keyword1 Keyword2" is AND operation in default.
We can change "keyword1 keyword2"'s operator except AND as below.
table_create Products TABLE_NO_KEY
column_create Products name COLUMN_SCALAR ShortText
load --table Products
[
["name"],
["Groonga"],
["Mroonga"],
["Rroonga"],
["PGroonga"],
["Ruby"],
["PostgreSQL"]
]
select \
--table Products \
--filter 'query("name", "Groonga Mroonga", {"default_operator": "OR"})'
[
[
0,
0.0,
0.0
],
[
[
[
3
],
[
[
"_id",
"UInt32"
],
[
"name",
"ShortText"
]
],
[
1,
"Groonga"
],
[
4,
"PGroonga"
],
[
2,
"Mroonga"
]
]
]
]
Conclusion
See Release 9.0.4 2019-06-29 about detailed changes since 9.0.3
Let's search by Groonga!