Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

explain select from storagemodel causes mserver5 to segfault #3300

Closed
monetdb-team opened this issue Nov 30, 2020 · 0 comments
Closed

explain select from storagemodel causes mserver5 to segfault #3300

monetdb-team opened this issue Nov 30, 2020 · 0 comments

Comments

@monetdb-team
Copy link

@monetdb-team monetdb-team commented Nov 30, 2020

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:

more defensive code. Partial fix for bug #3300

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:

fixed bug #3300. The nested functions error handling was improved.

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:

Adapt filter for test sql/test/BugTracker-2013/psm_functions_and_accessrights.Bug-3300.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant