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 checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list