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

Certains simple WHERE clause cause MonetDB to segfault without explanation #3829

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

Comments

@monetdb-team
Copy link

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

Date: 2015-10-21 15:49:13 +0200
From: Frédéric Jolliton <<frederic.jolliton+monetdb>>
To: SQL devs <>
Version: 11.21.5 (Jul2015)

Last updated: 2015-11-03 10:18:48 +0100

Comment 21369

Date: 2015-10-21 15:49:13 +0200
From: Frédéric Jolliton <<frederic.jolliton+monetdb>>

User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:41.0) Gecko/20100101 Firefox/41.0
Build Identifier:

We found yet another combination of expressions that cause MonetDB to crash without even logging a reason (except that it was due to a SIGSEGV.)

Since we're building complex queries on the fly, we're starting to get nervous, being unable to predict what could crash or not. Russian roulette.

Reproducible: Always

Steps to Reproduce:

  1. CREATE TABLE kb (value INT);
  2. SELECT 1 FROM kb WHERE value=1 AND (value=2 OR value=3 AND (value=4 OR value=5));

Actual Results:

MonetDB is crashing.

Expected Results:

MonetDB not crashing..

$ bin/mserver5 --version
MonetDB 5 server v11.21.7 "Jul2015-SP1" (64-bit, 64-bit oids, 128-bit integers)
Copyright (c) 1993-July 2008 CWI
Copyright (c) August 2008-2015 MonetDB B.V., all rights reserved
Visit http://www.monetdb.org/ for further information
Found 15.6GiB available memory, 4 available cpu cores
Libraries:
libpcre: 8.36 2014-09-26 (compiled with 8.36)
openssl: OpenSSL 1.0.1g 7 Apr 2014 (compiled with OpenSSL 1.0.1g 7 Apr 2014)
libxml2: 2.9.1 (compiled with 2.9.1)
Compiled by: fjolliton@workstation (x86_64-unknown-linux-gnu)
Compilation: gcc -g -Werror -Wall -Wextra -W -Werror-implicit-function-declaration -Wpointer-arith -Wdeclaration-after-statement -Wundef -Wformat=2 -Wno-format-nonliteral -Winit-self -Winvalid-pch -Wmissing-declarations -Wmissing-format-attribute -Wmissing-prototypes -Wold-style-definition -Wpacked -Wunknown-pragmas -Wvariadic-macros -fstack-protector-all -Wstack-protector -Wpacked-bitfield-compat -Wsync-nand -Wjump-misses-init -Wmissing-include-dirs -Wlogical-op -Wunreachable-code
Linking : /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64

Comment 21370

Date: 2015-10-21 15:55:51 +0200
From: Frédéric Jolliton <<frederic.jolliton+monetdb>>

This also crashes with just:

SELECT 1 FROM kb WHERE value AND (value OR value AND (value OR value));

Comment 21371

Date: 2015-10-21 16:01:25 +0200
From: MonetDB Mercurial Repository <>

Changeset 907dd705fc75 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=907dd705fc75

Changeset description:

Don't merge if there is no expression.
This fixes bug #3829.
Niels, please take a look.

Comment 21372

Date: 2015-10-21 16:04:19 +0200
From: MonetDB Mercurial Repository <>

Changeset e5b4b54cd228 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=e5b4b54cd228

Changeset description:

Test for bug #3829.

Comment 21373

Date: 2015-10-21 17:19:39 +0200
From: Frédéric Jolliton <<frederic.jolliton+monetdb>>

That was fast! Thanks for your reactivity. Awesome :)

Comment 21455

Date: 2015-11-03 10:18:48 +0100
From: @sjoerdmullender

Jul2015 SP1 has been released.

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