Changeset: a5a8ed8f7f73 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/a5a8ed8f7f73
Modified Files:
monetdb5/modules/mal/pcre.c
Branch: Jan2022
Log Message:
Make the strimp creation threshold user defined
The parameter gdk_strimps_threshold specifies how many entries the string bat
should have before a strimp is created. The defalt value is 1.000.000.
diffs (20 lines):
diff --git a/monetdb5/modules/mal/pcre.c b/monetdb5/modules/mal/pcre.c
--- a/monetdb5/modules/mal/pcre.c
+++ b/monetdb5/modules/mal/pcre.c
@@ -1871,6 +1871,7 @@ PCRElikeselect(bat *ret, const bat *bid,
char *ppat = NULL;
bool use_re = false, use_strcmp = false, empty = false;
bool use_strimps = GDKgetenv_isyes("gdk_use_strimps"), with_strimps =
false;
+ BUN strimp_creation_threshold = GDKgetenv_int("gdk_strimps_threshold",
1000000);
if ((b = BATdescriptor(*bid)) == NULL) {
msg = createException(MAL, "algebra.likeselect",
SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
@@ -1893,7 +1894,7 @@ PCRElikeselect(bat *ret, const bat *bid,
* A better solution is to run the PCRElikeselect as a LIKE query with
* strimps and return the complement of the result.
*/
- if (!empty && use_strimps && BATcount(b) >= STRIMP_CREATION_THRESHOLD
&& !*anti) {
+ if (!empty && use_strimps && BATcount(b) >= strimp_creation_threshold
&& !*anti) {
BAT *tmp_s = NULL;
if (STRMPcreate(b, NULL) == GDK_SUCCEED && (tmp_s =
STRMPfilter(b, s, *pat))) {
if (s)
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list