Using mclient log in as a non-admin user and connect to a database. Run the following command: explain select * from sys.storagemodel(); This causes a SEGFAULT in mserver5.
Reproducible: Always
Steps to Reproduce:
1.Using mclient log in as a non-admin user and connect to a database.
2. Run the following command: explain select * from sys.storagemodel();
Actual Results:
Welcome to mclient, the MonetDB/SQL interactive terminal (unreleased)
Database: MonetDB v11.15.8 (unreleased), 'db0'
Type \q to quit, ? for a list of available commands
auto commit mode: on
sql>explain select * from sys.storagemodel();
Connection terminated
Expected Results:
Welcome to mclient, the MonetDB/SQL interactive terminal (unreleased)
Database: MonetDB v11.15.8 (unreleased), 'db0'
Type \q to quit, ? for a list of available commands
auto commit mode: on
sql>explain select * from sys.storagemodel();
(the mal plan)
(gdb) where
0 0x00007fffea20a9e6 in backend_call (be=0x7fffa80d2800, c=0x66c558, cq=0x7fffa80fc190) at sql_gencode.c:2425
1 0x00007fffea1e5104 in SQLparser (c=0x66c558) at sql_scenario.c:1771
2 0x00007ffff78b747b in runPhase (c=0x66c558, phase=1) at mal_scenario.c:522
3 0x00007ffff78b75aa in runScenarioBody (c=0x66c558) at mal_scenario.c:558
4 0x00007ffff78b7754 in runScenario (c=0x66c558) at mal_scenario.c:586
5 0x00007ffff78b8637 in MSserveClient (dummy=0x66c558) at mal_session.c:431
6 0x00007ffff4eda851 in start_thread () from /lib64/libpthread.so.0
7 0x00007ffff4c2890d in clone () from /lib64/libc.so.6
(gdb) l
2420 InstrPtr q;
2421 MalBlkPtr mb = c->curprg->def;
2422
2423 q = newStmt1(mb, userRef, cq->name);
2424 /* cached (factorized queries return bit??) */
2425 if (getInstrPtr(((Symbol)cq->code)->def, 0)->token == FACTORYsymbol ) {
2426 setVarType(mb, getArg(q, 0), TYPE_bit);
2427 setVarUDFtype(mb,getArg(q,0));
2428 } else {
2429 setVarType(mb, getArg(q, 0), TYPE_void);
(gdb) p getInstrPtr(((Symbol)cq->code)->def, 0)
No symbol "getInstrPtr" in current context.
(gdb) p (Symbol)cq->code
$1 = (struct SYMDEF *) 0x0
(gdb) p (Symbol)cq
$2 = (struct SYMDEF *) 0x7fffa80fc190
(gdb)
Date: 2013-06-06 19:53:36 +0200
From: Tim Harrington <>
To: SQL devs <>
Version: 11.15.7 (Feb2013-SP2)
CC: @njnes
Last updated: 2013-07-03 08:47:59 +0200
Comment 18786
Date: 2013-06-06 19:53:36 +0200
From: Tim Harrington <>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0
Build Identifier:
Using mclient log in as a non-admin user and connect to a database. Run the following command: explain select * from sys.storagemodel(); This causes a SEGFAULT in mserver5.
Reproducible: Always
Steps to Reproduce:
1.Using mclient log in as a non-admin user and connect to a database.
2. Run the following command: explain select * from sys.storagemodel();
Actual Results:
Welcome to mclient, the MonetDB/SQL interactive terminal (unreleased)
Database: MonetDB v11.15.8 (unreleased), 'db0'
Type \q to quit, ? for a list of available commands
auto commit mode: on
sql>explain select * from sys.storagemodel();
Connection terminated
Expected Results:
Welcome to mclient, the MonetDB/SQL interactive terminal (unreleased)
Database: MonetDB v11.15.8 (unreleased), 'db0'
Type \q to quit, ? for a list of available commands
auto commit mode: on
sql>explain select * from sys.storagemodel();
(the mal plan)
(gdb) where
0 0x00007fffea20a9e6 in backend_call (be=0x7fffa80d2800, c=0x66c558, cq=0x7fffa80fc190) at sql_gencode.c:2425
1 0x00007fffea1e5104 in SQLparser (c=0x66c558) at sql_scenario.c:1771
2 0x00007ffff78b747b in runPhase (c=0x66c558, phase=1) at mal_scenario.c:522
3 0x00007ffff78b75aa in runScenarioBody (c=0x66c558) at mal_scenario.c:558
4 0x00007ffff78b7754 in runScenario (c=0x66c558) at mal_scenario.c:586
5 0x00007ffff78b8637 in MSserveClient (dummy=0x66c558) at mal_session.c:431
6 0x00007ffff4eda851 in start_thread () from /lib64/libpthread.so.0
7 0x00007ffff4c2890d in clone () from /lib64/libc.so.6
(gdb) l
2420 InstrPtr q;
2421 MalBlkPtr mb = c->curprg->def;
2422
2423 q = newStmt1(mb, userRef, cq->name);
2424 /* cached (factorized queries return bit??) */
2425 if (getInstrPtr(((Symbol)cq->code)->def, 0)->token == FACTORYsymbol ) {
2426 setVarType(mb, getArg(q, 0), TYPE_bit);
2427 setVarUDFtype(mb,getArg(q,0));
2428 } else {
2429 setVarType(mb, getArg(q, 0), TYPE_void);
(gdb) p getInstrPtr(((Symbol)cq->code)->def, 0)
No symbol "getInstrPtr" in current context.
(gdb) p (Symbol)cq->code
$1 = (struct SYMDEF *) 0x0
(gdb) p (Symbol)cq
$2 = (struct SYMDEF *) 0x7fffa80fc190
(gdb)
Comment 18791
Date: 2013-06-07 14:57:46 +0200
From: @njnes
the crash is easily solved. But the real problem is a bit deeper, ie the handling of access rights with functions seems to cause this.
Comment 18794
Date: 2013-06-07 15:49:15 +0200
From: MonetDB Mercurial Repository <>
Changeset 5751d58f996d made by Niels Nes niels@cwi.nl in the MonetDB repo, refers to this bug.
For complete details, see http//devmonetdborg/hg/MonetDB?cmd=changeset;node=5751d58f996d
Changeset description:
Comment 18811
Date: 2013-06-10 18:44:05 +0200
From: @njnes
cleaned up the error handling of nested function calls. The nested function (storagemodel) gives an access error when called by an non admin user.
Comment 18812
Date: 2013-06-10 18:52:11 +0200
From: MonetDB Mercurial Repository <>
Changeset cecb54de54c5 made by Niels Nes niels@cwi.nl in the MonetDB repo, refers to this bug.
For complete details, see http//devmonetdborg/hg/MonetDB?cmd=changeset;node=cecb54de54c5
Changeset description:
Comment 18840
Date: 2013-06-13 11:28:39 +0200
From: MonetDB Mercurial Repository <>
Changeset b441b033c4b7 made by Sjoerd Mullender sjoerd@acm.org in the MonetDB repo, refers to this bug.
For complete details, see http//devmonetdborg/hg/MonetDB?cmd=changeset;node=b441b033c4b7
Changeset description:
The text was updated successfully, but these errors were encountered: