Groonga 12.0.7 has been released
Groonga 12.0.7 has been released!
How to install: Install
Changes
Here are important changes in this release:
Improvements
-
Added a new function
escalate()
. (experimental)The
escalate()
function is similar to the existing match escalation ( Search ). We can use this function for any conditions. (The existing match escalation is just for one full text search by invert index.)The
escalate()
function is useful when we want to limit the number of results of a search. Even if we use--limit
, we can limit the number of results of a search. However,--limit
is evaluated after evaluating all conditions in our query. Theescalate()
function finish the evaluation of conditions at that point when the result set has greater thanTHRESHOLD
records. In other words, Theescalate()
function may reduce the number of evaluating conditions.The syntax of the
escalate()
function as below::escalate(THRESHOLD_1, CONDITION_1, THRESHOLD_2, CONDITION_2, ..., THRESHOLD_N, CONDITION_N)
THRESHOLD_N
is a positive number such as 0 and 29.CONDITION_N
is a string that uses script_syntax such asnumber_column > 29
.If the current result set has less than or equal to
THRESHOLD_1
records, the correspondingCONDITION_1
is executed. Similarly, if the next result set has less than or equal toTHRESHOLD_2
records, the correspondingCONDITION_2
is executed. If the next result set has greater thanTHRESHOLD_3
records, theescalate()
function is finished.If all
CONDITION
s are executed,escalate(THRESHOLD_1, CONDITION_1, ..., THRESHOLD_N, CONDITION_N)
is same asCONDITION_1 || ... || CONDITION_N
.The
escalate()
function can be worked with logical operators such as&&
and&!
::number_column > 10 && escalate(THRESHOLD_1, CONDITION_1, ..., THRESHOLD_N, CONDITION_N) number_column > 10 &! escalate(THRESHOLD_1, CONDITION_1, ..., THRESHOLD_N, CONDITION_N)
They are same as
number_column > 10 && (CONDITION_1 || ... || CONDITION_N)
andnumber_column > 10 &! (CONDITION_1 || ... || CONDITION_N)
.However, these behaviors may be changed because they may not be useful.
-
[httpd] Updated bundled nginx to 1.23.1.
-
select Add a document for the
--n_workers
option.
Fixes
-
Fixed a bug Groonga's response may be slow when we execute the
request_cancel
while executing a OR search.When the number of results of the OR search is many and a query has many OR conditions, Groonga may response slow with the "request_cancel" command.
Known Issues
-
Currently, Groonga has a bug that there is possible that data is corrupt when we execute many additions, delete, and update data to vector column.
-
*<
and*>
only valid when we usequery()
the right side of filter condition. If we specify as below,*<
and*>
work as&&
.'content @ "Groonga" *< content @ "Mroonga"'
-
Groonga may not return records that should match caused by
GRN_II_CURSOR_SET_MIN_ENABLE
.
Conclusion
Please refert to the following news for more details.
Let's search by Groonga!