Changeset: e7db59216ef9 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/e7db59216ef9
Modified Files:
        gdk/gdk_bbp.c
Branch: default
Log Message:

merge with jun2023


diffs (truncated from 442 to 300 lines):

diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -1484,6 +1484,8 @@ BBPtrim(bool aggressive)
        if (!aggressive)
                flag |= BBPHOT;
        for (bat bid = 1, nbat = (bat) ATOMIC_GET(&BBPsize); bid < nbat; bid++) 
{
+               if (GDKexiting())
+                       return changed;
                /* don't do this during a (sub)commit */
                BBPtmlock();
                MT_lock_set(&GDKswapLock(bid));
diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -2421,15 +2421,10 @@ log_cleanup_range(logger *lg, ulng id)
 static void
 do_rotate(logger *lg)
 {
-       logged_range *cur = lg->current;
-       logged_range *next = cur->next;
+       logged_range *next = lg->current->next;
        if (next) {
                assert(ATOMIC_GET(&next->refcount) == 1);
-               lg->current = next;
-               if (ATOMIC_GET(&cur->refcount) == 1) {
-                       close_stream(cur->output_log);
-                       cur->output_log = NULL;
-               }
+               lg->current = lg->current->next;
        }
 }
 
@@ -3104,14 +3099,7 @@ log_tflush(logger *lg, ulng file_id, uln
        }
        /* else somebody else has flushed our log file */
 
-       if (ATOMIC_DEC(&frange->refcount) == 1) {
-               rotation_lock(lg);
-               if (frange != lg->current) {
-                       close_stream(frange->output_log);
-                       frange->output_log = NULL;
-               }
-               rotation_unlock(lg);
-       }
+       ATOMIC_DEC(&frange->refcount);
 
        if (ATOMIC_DEC(&lg->nr_flushers) == 0) {
                /* I am the last flusher
diff --git a/sql/test/sys-schema/Tests/All b/sql/test/sys-schema/Tests/All
--- a/sql/test/sys-schema/Tests/All
+++ b/sql/test/sys-schema/Tests/All
@@ -16,6 +16,7 @@ webExamplesComparisonFunctionsOperators
 webExamplesCastFunctionsOperators
 webExamplesMathematicalFunctionsOperators
 webExamplesDateTimeFunctionsOperators
+webExamplesStringFunctions
 webExamplesUrlFunctions
 
 utilities
diff --git a/sql/test/sys-schema/Tests/webExamplesStringFunctions.test 
b/sql/test/sys-schema/Tests/webExamplesStringFunctions.test
new file mode 100644
--- /dev/null
+++ b/sql/test/sys-schema/Tests/webExamplesStringFunctions.test
@@ -0,0 +1,377 @@
+# These apply to MonetDB SQL character string types: character, character 
varying, varchar, clob and subtypes: json and url.
+# In MonetDB all character strings are **UTF-8** encoded.
+
+query T
+select 'Monet'||'DB'
+----
+MonetDB
+
+query T
+select 'Value: '||42
+----
+Value: 42
+
+query T
+select ascii(R'€')
+----
+8364
+
+query T
+select asciify(R'a € sign')
+----
+a EUR sign
+
+query I
+select char_length(R'2€')
+----
+2
+
+query I
+select character_length(R'2€')
+----
+2
+
+query I
+select charindex('gh', 'highigh')
+----
+3
+
+query I
+select charindex('gh', 'highigh', 4)
+----
+6
+
+query T
+select code(223)
+----
+@
+
+# expected "ß"
+
+query T
+select concat('Front ', 242)
+----
+Front 242
+
+query I
+select contains('abcd', 'bc')
+----
+1
+
+query I
+select contains('abcd', 'BC', true)
+----
+1
+
+query I
+select endswith('abc', 'bc')
+----
+1
+
+query I
+select endswith('abc', 'BC', true)
+----
+1
+
+query T
+select greatest('ab', 'ac')
+----
+ac
+
+query T
+select insert('abcdef', 2, 1, 'XY')
+----
+abXYdef
+
+query T
+select lcase('MonetDB')
+----
+monetdb
+
+query T
+select least('ab', 'ac')
+----
+ab
+
+query T
+select left('MonetDB', 3)
+----
+Mon
+
+query I
+select length('2€')
+----
+2
+
+query I
+select locate('DB', 'MonetDB')
+----
+6
+
+query I
+select locate('DB', 'DBMonetDB', 3)
+----
+8
+
+query T
+select lower('MonetDB')
+----
+monetdb
+
+query T
+select lpad('abc', 6)
+----
+   abc
+
+query T
+select lpad('abc', 6, 'DB')
+----
+DBDabc
+
+query T
+select ltrim(E' \t\fab \tdf ')
+----
+ab @df 
+
+query T
+select ltrim('aabcdaa', 'a')
+----
+bcdaa
+
+query T
+select sys.md5('abc')
+----
+900150983cd24fb0d6963f7d28e17f72
+
+query T
+select sys.ms_stuff('abcdef', 2, 1, 'XY')
+----
+aXYcdef
+
+query I
+select octet_length(R'2€')
+----
+4
+
+query I
+select patindex('%bc%', 'abcd')
+----
+3
+
+query I
+select position('DB' IN 'MonetDB')
+----
+6
+
+query T
+select repeat('kiss,', 3)
+----
+kiss,kiss,kiss,
+
+query T
+select replace('abc', 'b', 'X')
+----
+aXc
+
+query T
+select right('MonetDB', 4)
+----
+etDB
+
+query T
+select rpad('abc', 6) || 'End'
+----
+abc   End
+
+query T
+select rpad('abc', 6, 'DB')
+----
+abcDBD
+
+query T
+select rtrim(E'ab df \t\n')
+----
+ab df
+
+query T
+select rtrim('aabcdaa', 'a')
+----
+aabcd
+
+query T
+select 's' || space(4) || 'e'
+----
+s    e
+
+query T
+select splitpart('a|a|bc|cd', '|', 3)
+----
+bc
+
+query T
+select sql_max('ab', 'ac')
+----
+ac
+
+query T
+select sql_min('ab', 'ac')
+----
+ab
+
+query I
+select startswith('bcd', 'bc')
+----
+1
+
+query I
+select startswith('bcd', 'BC', true)
+----
+1
+
+query T
+select substr('abCde', 3)
+----
+Cde
+
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to