
**Describe the bug**
The `SELECT` statement should execute without causing the database to crash. Ideally, the query should return no rows or handle the `NULL` value appropriately according to SQL standards.

**To Reproduce**

```sql
DROP TABLE IF EXISTS t1 CASCADE;
CREATE TABLE t1(c0 INTEGER); 
INSERT INTO t1(c0) VALUES (1);

SELECT * FROM t1 WHERE CONTAINS(1, NULL); -- unexpected end of file
```

**Expected behavior**
As mentioned above

**Screenshots**

backtrace (using gdb):

```
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=140168462124608) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=140168462124608) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=140168462124608, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007f7b8b8a5476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007f7b8b88b7f3 in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007f7b8b88b71b in __assert_fail_base (
    fmt=0x7f7b8ba40130 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x7f7b8d27eb1f "!strNil(s)", 
    file=0x7f7b8d27eae8 "/app/MonetDB/monetdb5/modules/atoms/str.c", line=163, function=<optimized out>)
    at ./assert/assert.c:92
#6  0x00007f7b8b89ce96 in __GI___assert_fail (assertion=0x7f7b8d27eb1f "!strNil(s)", 
    file=0x7f7b8d27eae8 "/app/MonetDB/monetdb5/modules/atoms/str.c", line=163, 
    function=0x7f7b8d280988 <__PRETTY_FUNCTION__.73> "str_strlen") at ./assert/assert.c:101
#7  0x00007f7b8d09fdef in str_strlen () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#8  0x00007f7b8d0ac038 in STRselect () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#9  0x00007f7b8d0ad301 in STRcontainsselect () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#10 0x00007f7b8d06e967 in runMALsequence () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#11 0x00007f7b8d0728c0 in DFLOWworker () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#12 0x00007f7b8c33fa48 in thread_starter () from /usr/local/lib/libbat-11.50.0.so.28
#13 0x00007f7b8b8f7ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
#14 0x00007f7b8b988a04 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
```

**Software versions**
Build from source https://www.monetdb.org/documentation-Dec2023/dev-guide/installation-from-source/#summary:

```
> docker exec -it monetdb-test mserver5 --version         
MonetDB 5 server 11.50.0 (hg id: 6e3d6f5) (64-bit, 128-bit integers)
This is an unreleased version
Copyright (c) 1993 - July 2008 CWI
Copyright (c) August 2008 - 2023 MonetDB B.V., all rights reserved
Visit https://www.monetdb.org/ for further information
Found 503.5GiB available memory, 128 available cpu cores
Libraries:
Compiled by: @7094a4ca4432 (x86_64-pc-linux-gnu)
Compilation: /usr/bin/cc 
Linking    : /usr/bin/ld
```

**Issue labeling**
Bug

**Additional context**
Add any other context about the problem here.
Assertion failure when using `CONTAINS`
This is a GitHub Issue
repo:MonetDB
owner:MonetDB
Title : Assertion failure when using `CONTAINS`
Issue date:

--- start body ---

**Describe the bug**
The `SELECT` statement should execute without causing the database to crash. Ideally, the query should return no rows or handle the `NULL` value appropriately according to SQL standards.

**To Reproduce**

```sql
DROP TABLE IF EXISTS t1 CASCADE;
CREATE TABLE t1(c0 INTEGER); 
INSERT INTO t1(c0) VALUES (1);

SELECT * FROM t1 WHERE CONTAINS(1, NULL); -- unexpected end of file
```

**Expected behavior**
As mentioned above

**Screenshots**

backtrace (using gdb):

```
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=140168462124608) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=140168462124608) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=140168462124608, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007f7b8b8a5476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007f7b8b88b7f3 in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007f7b8b88b71b in __assert_fail_base (
    fmt=0x7f7b8ba40130 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x7f7b8d27eb1f "!strNil(s)", 
    file=0x7f7b8d27eae8 "/app/MonetDB/monetdb5/modules/atoms/str.c", line=163, function=<optimized out>)
    at ./assert/assert.c:92
#6  0x00007f7b8b89ce96 in __GI___assert_fail (assertion=0x7f7b8d27eb1f "!strNil(s)", 
    file=0x7f7b8d27eae8 "/app/MonetDB/monetdb5/modules/atoms/str.c", line=163, 
    function=0x7f7b8d280988 <__PRETTY_FUNCTION__.73> "str_strlen") at ./assert/assert.c:101
#7  0x00007f7b8d09fdef in str_strlen () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#8  0x00007f7b8d0ac038 in STRselect () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#9  0x00007f7b8d0ad301 in STRcontainsselect () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#10 0x00007f7b8d06e967 in runMALsequence () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#11 0x00007f7b8d0728c0 in DFLOWworker () from /usr/local/lib/libmonetdb5-11.50.0.so.35
#12 0x00007f7b8c33fa48 in thread_starter () from /usr/local/lib/libbat-11.50.0.so.28
#13 0x00007f7b8b8f7ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
#14 0x00007f7b8b988a04 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
```

**Software versions**
Build from source https://www.monetdb.org/documentation-Dec2023/dev-guide/installation-from-source/#summary:

```
> docker exec -it monetdb-test mserver5 --version         
MonetDB 5 server 11.50.0 (hg id: 6e3d6f5) (64-bit, 128-bit integers)
This is an unreleased version
Copyright (c) 1993 - July 2008 CWI
Copyright (c) August 2008 - 2023 MonetDB B.V., all rights reserved
Visit https://www.monetdb.org/ for further information
Found 503.5GiB available memory, 128 available cpu cores
Libraries:
Compiled by: @7094a4ca4432 (x86_64-pc-linux-gnu)
Compilation: /usr/bin/cc 
Linking    : /usr/bin/ld
```

**Issue labeling**
Bug

**Additional context**
Add any other context about the problem here.
--- end body ---
