[MonetDB-users] Segfault interpreting sql query
Hi, Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault. Error in syslog says: [ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000] Following is the faulty ddl / query. Is there anything I can do to help debug this ? Franck The ddl is the following: CREATE TABLE cabact ( cabactcsu integer NOT NULL, cabact___rforefide character varying(32) NOT NULL, cabact___rteprcide character varying(32) NOT NULL, cabact___rtestdide character varying(32) NOT NULL, cabact___rfovsnide character varying(32) NOT NULL, cabactlil character varying(100) NOT NULL, cabactlic character varying(32) NOT NULL, cabacttxt character varying(1500), cabact___rfontride character varying(32), cabact_f1rfodstide character varying(32), cabact_f2rfodstide character varying(32), cabact_f3rfodstide character varying(32), cabact_f4rfodstide character varying(32), cabact_f5rfodstide character varying(32), cabact_f6rfodstide character varying(32), cabact_f7rfodstide character varying(32), cabact_f8rfodstide character varying(32), cabact_f9rfodstide character varying(32), cabact_c1rfodstide character varying(32), cabact_c2rfodstide character varying(32), cabact_c3rfodstide character varying(32), cabact_c4rfodstide character varying(32), cabact_c5rfodstide character varying(32), cabact_c6rfodstide character varying(32), cabact_c7rfodstide character varying(32), cabact_c8rfodstide character varying(32), cabact_c9rfodstide character varying(32), cabactqte double, cabact___rfountide character varying(32), cabactdtd timestamp with time zone NOT NULL, cabactdtf timestamp with time zone NOT NULL, cabactax1 integer NOT NULL DEFAULT 1, cabactax2 integer NOT NULL DEFAULT 2, cabactax3 integer NOT NULL DEFAULT 3, cabactax4 integer NOT NULL DEFAULT 4, cabactax5 integer NOT NULL DEFAULT 5, cabactax6 integer NOT NULL DEFAULT 6, cabactax7 integer NOT NULL DEFAULT 7, cabactax8 integer NOT NULL DEFAULT 8, cabactax9 integer NOT NULL DEFAULT 9 ); CREATE TABLE rfoade ( rfoade___rforefide character varying(50) NOT NULL, rfoade___rfovdeide character varying(50) NOT NULL, rfoade_i_rfodstide character varying(50) NOT NULL, rfoadeaxe integer DEFAULT 0 NOT NULL, rfoadervs integer NOT NULL, rfoadenpm integer DEFAULT 1, rfoade_s_rfodstide character varying(32) NOT NULL, rfoadegch character varying(120) DEFAULT 'AAAAA' NOT NULL, rfoadedrt character varying(120) DEFAULT 'ZZZZZ' NOT NULL, rfoadeniv integer DEFAULT 0 NOT NULL, rfoadetxt character varying(1800), rfoadenum integer DEFAULT 99999 NOT NULL, rfoadeden integer DEFAULT 999 NOT NULL, rfoadechm character varying(5500) DEFAULT 'INVALID' NOT NULL, rfoadeord integer DEFAULT 999999 NOT NULL ); And the query is: select * from cabact where cabact___rforefide = 'FHSJ' and cabact___rteprcide = 'CPTANA' and cabact___rtestdide = '100' and cabact___rfovsnide = '200805_001' and (cabact_f1rfodstide IS NULL or cabact_f1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f2rfodstide IS NULL or cabact_f2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f3rfodstide IS NULL or cabact_f3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f4rfodstide IS NULL or cabact_f4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f5rfodstide IS NULL or cabact_f5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f6rfodstide IS NULL or cabact_f6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f7rfodstide IS NULL or cabact_f7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f8rfodstide IS NULL or cabact_f8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f9rfodstide IS NULL or cabact_f9rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c1rfodstide IS NULL or cabact_c1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c2rfodstide IS NULL or cabact_c2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c3rfodstide IS NULL or cabact_c3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c4rfodstide IS NULL or cabact_c4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c5rfodstide IS NULL or cabact_c5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c6rfodstide IS NULL or cabact_c6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c7rfodstide IS NULL or cabact_c7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c8rfodstide IS NULL or cabact_c8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1'))
Franck Routier wrote:
Hi,
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
The script ran against the (development) version does not show the reported behavior. What version of MonetDB/SQL did you use? On what platform? regards, Martin
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ?
Franck
The ddl is the following:
CREATE TABLE cabact ( cabactcsu integer NOT NULL, cabact___rforefide character varying(32) NOT NULL, cabact___rteprcide character varying(32) NOT NULL, cabact___rtestdide character varying(32) NOT NULL, cabact___rfovsnide character varying(32) NOT NULL, cabactlil character varying(100) NOT NULL, cabactlic character varying(32) NOT NULL, cabacttxt character varying(1500), cabact___rfontride character varying(32), cabact_f1rfodstide character varying(32), cabact_f2rfodstide character varying(32), cabact_f3rfodstide character varying(32), cabact_f4rfodstide character varying(32), cabact_f5rfodstide character varying(32), cabact_f6rfodstide character varying(32), cabact_f7rfodstide character varying(32), cabact_f8rfodstide character varying(32), cabact_f9rfodstide character varying(32), cabact_c1rfodstide character varying(32), cabact_c2rfodstide character varying(32), cabact_c3rfodstide character varying(32), cabact_c4rfodstide character varying(32), cabact_c5rfodstide character varying(32), cabact_c6rfodstide character varying(32), cabact_c7rfodstide character varying(32), cabact_c8rfodstide character varying(32), cabact_c9rfodstide character varying(32), cabactqte double, cabact___rfountide character varying(32), cabactdtd timestamp with time zone NOT NULL, cabactdtf timestamp with time zone NOT NULL, cabactax1 integer NOT NULL DEFAULT 1, cabactax2 integer NOT NULL DEFAULT 2, cabactax3 integer NOT NULL DEFAULT 3, cabactax4 integer NOT NULL DEFAULT 4, cabactax5 integer NOT NULL DEFAULT 5, cabactax6 integer NOT NULL DEFAULT 6, cabactax7 integer NOT NULL DEFAULT 7, cabactax8 integer NOT NULL DEFAULT 8, cabactax9 integer NOT NULL DEFAULT 9 );
CREATE TABLE rfoade ( rfoade___rforefide character varying(50) NOT NULL, rfoade___rfovdeide character varying(50) NOT NULL, rfoade_i_rfodstide character varying(50) NOT NULL, rfoadeaxe integer DEFAULT 0 NOT NULL, rfoadervs integer NOT NULL, rfoadenpm integer DEFAULT 1, rfoade_s_rfodstide character varying(32) NOT NULL, rfoadegch character varying(120) DEFAULT 'AAAAA' NOT NULL, rfoadedrt character varying(120) DEFAULT 'ZZZZZ' NOT NULL, rfoadeniv integer DEFAULT 0 NOT NULL, rfoadetxt character varying(1800), rfoadenum integer DEFAULT 99999 NOT NULL, rfoadeden integer DEFAULT 999 NOT NULL, rfoadechm character varying(5500) DEFAULT 'INVALID' NOT NULL, rfoadeord integer DEFAULT 999999 NOT NULL );
And the query is:
select * from cabact where cabact___rforefide = 'FHSJ' and cabact___rteprcide = 'CPTANA' and cabact___rtestdide = '100' and cabact___rfovsnide = '200805_001' and (cabact_f1rfodstide IS NULL or cabact_f1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f2rfodstide IS NULL or cabact_f2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f3rfodstide IS NULL or cabact_f3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f4rfodstide IS NULL or cabact_f4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f5rfodstide IS NULL or cabact_f5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f6rfodstide IS NULL or cabact_f6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f7rfodstide IS NULL or cabact_f7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f8rfodstide IS NULL or cabact_f8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f9rfodstide IS NULL or cabact_f9rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c1rfodstide IS NULL or cabact_c1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c2rfodstide IS NULL or cabact_c2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c3rfodstide IS NULL or cabact_c3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c4rfodstide IS NULL or cabact_c4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c5rfodstide IS NULL or cabact_c5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c6rfodstide IS NULL or cabact_c6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c7rfodstide IS NULL or cabact_c7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c8rfodstide IS NULL or cabact_c8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1'))
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
On Fri, 24 Jul 2009, Franck Routier wrote:
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ?
For the dev guys that want to debug this; I'm giving it a shot aswel: (gdb) bt #0 0x00007fa1097718ec in prop_destroy (p=0x0) at ../../../src/server/rel_prop.mx:54 #1 0x00007fa10977190a in prop_destroy (p=0x39165f8) at ../../../src/server/rel_prop.mx:56 #2 0x00007fa10977190a in prop_destroy (p=0x3916658) at ../../../src/server/rel_prop.mx:56 #3 0x00007fa10977190a in prop_destroy (p=0x3916688) at ../../../src/server/rel_prop.mx:56 #4 0x00007fa10977190a in prop_destroy (p=0x3916748) at ../../../src/server/rel_prop.mx:56 #5 0x00007fa10977190a in prop_destroy (p=0x3916778) at ../../../src/server/rel_prop.mx:56 #6 0x00007fa10977190a in prop_destroy (p=0x39167d8) at ../../../src/server/rel_prop.mx:56 #7 0x00007fa10977190a in prop_destroy (p=0x3916808) at ../../../src/server/rel_prop.mx:56 #8 0x00007fa10977190a in prop_destroy (p=0x3916898) at ../../../src/server/rel_prop.mx:56 #9 0x00007fa10977190a in prop_destroy (p=0x39168c8) at ../../../src/server/rel_prop.mx:56 #10 0x00007fa10977190a in prop_destroy (p=0x3916928) at ../../../src/server/rel_prop.mx:56 #11 0x00007fa10977190a in prop_destroy (p=0x3916958) ...goes on and on. (gdb) list 49 #include "rel_semantic.h" 50 #include "rel_prop.h" 51 52 void 53 prop_destroy( prop *p ) 54 { 55 if (p->p) 56 prop_destroy(p->p); 57 _DELETE(p); 58 } Stefan
On Fri, Jul 24, 2009 at 10:42:33PM +0200, Stefan de Konink wrote:
On Fri, 24 Jul 2009, Franck Routier wrote:
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ?
For the dev guys that want to debug this; I'm giving it a shot aswel:
(gdb) bt #0 0x00007fa1097718ec in prop_destroy (p=0x0) at ../../../src/server/rel_prop.mx:54 #1 0x00007fa10977190a in prop_destroy (p=0x39165f8) at ../../../src/server/rel_prop.mx:56 #2 0x00007fa10977190a in prop_destroy (p=0x3916658) at ../../../src/server/rel_prop.mx:56 #3 0x00007fa10977190a in prop_destroy (p=0x3916688) at ../../../src/server/rel_prop.mx:56 #4 0x00007fa10977190a in prop_destroy (p=0x3916748) at ../../../src/server/rel_prop.mx:56 #5 0x00007fa10977190a in prop_destroy (p=0x3916778) at ../../../src/server/rel_prop.mx:56 #6 0x00007fa10977190a in prop_destroy (p=0x39167d8) at ../../../src/server/rel_prop.mx:56 #7 0x00007fa10977190a in prop_destroy (p=0x3916808) at ../../../src/server/rel_prop.mx:56 #8 0x00007fa10977190a in prop_destroy (p=0x3916898) at ../../../src/server/rel_prop.mx:56 #9 0x00007fa10977190a in prop_destroy (p=0x39168c8) at ../../../src/server/rel_prop.mx:56 #10 0x00007fa10977190a in prop_destroy (p=0x3916928) at ../../../src/server/rel_prop.mx:56 #11 0x00007fa10977190a in prop_destroy (p=0x3916958)
...goes on and on.
(gdb) list 49 #include "rel_semantic.h" 50 #include "rel_prop.h" 51 52 void 53 prop_destroy( prop *p ) 54 { 55 if (p->p) 56 prop_destroy(p->p); 57 _DELETE(p); 58 }
just a guess: might be a stack overflow due to too deep recursion. Stefan
Stefan
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
-- | Dr. Stefan Manegold | mailto:Stefan.Manegold@cwi.nl | | CWI, P.O.Box 94079 | http://www.cwi.nl/~manegold/ | | 1090 GB Amsterdam | Tel.: +31 (20) 592-4212 | | The Netherlands | Fax : +31 (20) 592-4312 |
Stefan Manegold wrote:
On Fri, Jul 24, 2009 at 10:42:33PM +0200, Stefan de Konink wrote:
On Fri, 24 Jul 2009, Franck Routier wrote:
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault. Please, please, state your platform/version ... as it ran fine on the development branch
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ? For the dev guys that want to debug this; I'm giving it a shot aswel:
(gdb) bt #0 0x00007fa1097718ec in prop_destroy (p=0x0) at ../../../src/server/rel_prop.mx:54 #1 0x00007fa10977190a in prop_destroy (p=0x39165f8) at ../../../src/server/rel_prop.mx:56 #2 0x00007fa10977190a in prop_destroy (p=0x3916658) at ../../../src/server/rel_prop.mx:56 #3 0x00007fa10977190a in prop_destroy (p=0x3916688) at ../../../src/server/rel_prop.mx:56 #4 0x00007fa10977190a in prop_destroy (p=0x3916748) at ../../../src/server/rel_prop.mx:56 #5 0x00007fa10977190a in prop_destroy (p=0x3916778) at ../../../src/server/rel_prop.mx:56 #6 0x00007fa10977190a in prop_destroy (p=0x39167d8) at ../../../src/server/rel_prop.mx:56 #7 0x00007fa10977190a in prop_destroy (p=0x3916808) at ../../../src/server/rel_prop.mx:56 #8 0x00007fa10977190a in prop_destroy (p=0x3916898) at ../../../src/server/rel_prop.mx:56 #9 0x00007fa10977190a in prop_destroy (p=0x39168c8) at ../../../src/server/rel_prop.mx:56 #10 0x00007fa10977190a in prop_destroy (p=0x3916928) at ../../../src/server/rel_prop.mx:56 #11 0x00007fa10977190a in prop_destroy (p=0x3916958)
...goes on and on.
(gdb) list 49 #include "rel_semantic.h" 50 #include "rel_prop.h" 51 52 void 53 prop_destroy( prop *p ) 54 { 55 if (p->p) 56 prop_destroy(p->p); 57 _DELETE(p); 58 }
just a guess:
might be a stack overflow due to too deep recursion.
Stefan
Stefan
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
On Fri, 24 Jul 2009, Martin Kersten wrote:
Stefan Manegold wrote:
On Fri, Jul 24, 2009 at 10:42:33PM +0200, Stefan de Konink wrote:
On Fri, 24 Jul 2009, Franck Routier wrote:
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault. Please, please, state your platform/version ... as it ran fine on the development branch
I did not upgrade my branch after yesterdays select/where bug; so I do see this on 64/64. Stefan
On Fri, 24 Jul 2009, Stefan de Konink wrote:
On Fri, 24 Jul 2009, Martin Kersten wrote:
Stefan Manegold wrote:
On Fri, Jul 24, 2009 at 10:42:33PM +0200, Stefan de Konink wrote:
On Fri, 24 Jul 2009, Franck Routier wrote:
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault. Please, please, state your platform/version ... as it ran fine on the development branch
I did not upgrade my branch after yesterdays select/where bug; so I do see this on 64/64.
Might this be related to the fix Niels checked in today about the projection with unique? Stefan
Le vendredi 24 juillet 2009 à 22:50 +0200, Martin Kersten a écrit :
Please, please, state your platform/version ... as it ran fine on the development branch
sorry, I've been offline for the week-end. The version I am using is the one packaged for Ubuntu x64, namely: monetdb5-sql 2.30.2-20090629, monetdb5-server 5.12.2-20090629 monetdb-client 1.30.2-20090629 Franck
On Fri, 24 Jul 2009, Stefan Manegold wrote:
just a guess:
might be a stack overflow due to too deep recursion.
This is the part that triggers it: #65292 0x00007f2e7aa09d92 in rel_destroy_ (rel=0x2372608) at ../../../src/server/rel_select.mx:125 125 prop_destroy(rel->p); (gdb) list 120 exp_destroy(rel->l); 121 if (rel->p) 122 prop_destroy(rel->p); 123 } else if (rel->op == op_basetable) { 124 if (rel->p) 125 prop_destroy(rel->p); 126 } else if (is_modify(rel->op)) { 127 if (rel->r) 128 rel_destroy(rel->r); 129 } Stefan
Stefan Manegold wrote:
On Fri, Jul 24, 2009 at 10:42:33PM +0200, Stefan de Konink wrote:
On Fri, 24 Jul 2009, Franck Routier wrote:
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ? For the dev guys that want to debug this; I'm giving it a shot aswel:
(gdb) bt #0 0x00007fa1097718ec in prop_destroy (p=0x0) at ../../../src/server/rel_prop.mx:54 #1 0x00007fa10977190a in prop_destroy (p=0x39165f8) at ../../../src/server/rel_prop.mx:56 #2 0x00007fa10977190a in prop_destroy (p=0x3916658) at ../../../src/server/rel_prop.mx:56 #3 0x00007fa10977190a in prop_destroy (p=0x3916688) at ../../../src/server/rel_prop.mx:56 #4 0x00007fa10977190a in prop_destroy (p=0x3916748) at ../../../src/server/rel_prop.mx:56 #5 0x00007fa10977190a in prop_destroy (p=0x3916778) at ../../../src/server/rel_prop.mx:56 #6 0x00007fa10977190a in prop_destroy (p=0x39167d8) at ../../../src/server/rel_prop.mx:56 #7 0x00007fa10977190a in prop_destroy (p=0x3916808) at ../../../src/server/rel_prop.mx:56 #8 0x00007fa10977190a in prop_destroy (p=0x3916898) at ../../../src/server/rel_prop.mx:56 #9 0x00007fa10977190a in prop_destroy (p=0x39168c8) at ../../../src/server/rel_prop.mx:56 #10 0x00007fa10977190a in prop_destroy (p=0x3916928) at ../../../src/server/rel_prop.mx:56 #11 0x00007fa10977190a in prop_destroy (p=0x3916958)
...goes on and on.
(gdb) list 49 #include "rel_semantic.h" 50 #include "rel_prop.h" 51 52 void 53 prop_destroy( prop *p ) 54 { 55 if (p->p) 56 prop_destroy(p->p); 57 _DELETE(p); 58 }
just a guess:
might be a stack overflow due to too deep recursion.
I can easily reproduce this on the up-to-date Stable branch (Fedora 10, 64 bits). This is indeed a case of too deep recursion: after sitting on the Enter key for a long time, the stack trace was up to 52000 levels and it was still going strong. All those levels were the recursive call Stefan deK indicated, but the arguments were different (at least in the sample I looked at), so it's not a simple loop in the linked list. -- Sjoerd Mullender
Hi, just to make it clear on the use case, the 'cabact' table is a fact table and 'rfoade' is a hierarchy table. Cabact has 18 dimensions (cabact_f[1-9]rfodstide and cabact_c[1-9]rfodsitide) using the hierarchies stored in rfoade. The failing request is generated by Mondrian when trying to view the resulting OLAP cube. Franck Le vendredi 24 juillet 2009 à 22:27 +0200, Franck Routier a écrit :
Hi,
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ?
Franck
The ddl is the following:
CREATE TABLE cabact ( cabactcsu integer NOT NULL, cabact___rforefide character varying(32) NOT NULL, cabact___rteprcide character varying(32) NOT NULL, cabact___rtestdide character varying(32) NOT NULL, cabact___rfovsnide character varying(32) NOT NULL, cabactlil character varying(100) NOT NULL, cabactlic character varying(32) NOT NULL, cabacttxt character varying(1500), cabact___rfontride character varying(32), cabact_f1rfodstide character varying(32), cabact_f2rfodstide character varying(32), cabact_f3rfodstide character varying(32), cabact_f4rfodstide character varying(32), cabact_f5rfodstide character varying(32), cabact_f6rfodstide character varying(32), cabact_f7rfodstide character varying(32), cabact_f8rfodstide character varying(32), cabact_f9rfodstide character varying(32), cabact_c1rfodstide character varying(32), cabact_c2rfodstide character varying(32), cabact_c3rfodstide character varying(32), cabact_c4rfodstide character varying(32), cabact_c5rfodstide character varying(32), cabact_c6rfodstide character varying(32), cabact_c7rfodstide character varying(32), cabact_c8rfodstide character varying(32), cabact_c9rfodstide character varying(32), cabactqte double, cabact___rfountide character varying(32), cabactdtd timestamp with time zone NOT NULL, cabactdtf timestamp with time zone NOT NULL, cabactax1 integer NOT NULL DEFAULT 1, cabactax2 integer NOT NULL DEFAULT 2, cabactax3 integer NOT NULL DEFAULT 3, cabactax4 integer NOT NULL DEFAULT 4, cabactax5 integer NOT NULL DEFAULT 5, cabactax6 integer NOT NULL DEFAULT 6, cabactax7 integer NOT NULL DEFAULT 7, cabactax8 integer NOT NULL DEFAULT 8, cabactax9 integer NOT NULL DEFAULT 9 );
CREATE TABLE rfoade ( rfoade___rforefide character varying(50) NOT NULL, rfoade___rfovdeide character varying(50) NOT NULL, rfoade_i_rfodstide character varying(50) NOT NULL, rfoadeaxe integer DEFAULT 0 NOT NULL, rfoadervs integer NOT NULL, rfoadenpm integer DEFAULT 1, rfoade_s_rfodstide character varying(32) NOT NULL, rfoadegch character varying(120) DEFAULT 'AAAAA' NOT NULL, rfoadedrt character varying(120) DEFAULT 'ZZZZZ' NOT NULL, rfoadeniv integer DEFAULT 0 NOT NULL, rfoadetxt character varying(1800), rfoadenum integer DEFAULT 99999 NOT NULL, rfoadeden integer DEFAULT 999 NOT NULL, rfoadechm character varying(5500) DEFAULT 'INVALID' NOT NULL, rfoadeord integer DEFAULT 999999 NOT NULL );
And the query is:
select * from cabact where cabact___rforefide = 'FHSJ' and cabact___rteprcide = 'CPTANA' and cabact___rtestdide = '100' and cabact___rfovsnide = '200805_001' and (cabact_f1rfodstide IS NULL or cabact_f1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f2rfodstide IS NULL or cabact_f2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f3rfodstide IS NULL or cabact_f3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f4rfodstide IS NULL or cabact_f4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f5rfodstide IS NULL or cabact_f5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f6rfodstide IS NULL or cabact_f6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f7rfodstide IS NULL or cabact_f7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f8rfodstide IS NULL or cabact_f8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f9rfodstide IS NULL or cabact_f9rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c1rfodstide IS NULL or cabact_c1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c2rfodstide IS NULL or cabact_c2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c3rfodstide IS NULL or cabact_c3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c4rfodstide IS NULL or cabact_c4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c5rfodstide IS NULL or cabact_c5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c6rfodstide IS NULL or cabact_c6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c7rfodstide IS NULL or cabact_c7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c8rfodstide IS NULL or cabact_c8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1'))
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
It's clear this is a bug. Can you report it on the Sourceforge bugtracker [1] please? [1] https://sourceforge.net/tracker/?group_id=56967&atid=482468 On 2009-07-27 11:04, Franck Routier wrote:
Hi,
just to make it clear on the use case, the 'cabact' table is a fact table and 'rfoade' is a hierarchy table. Cabact has 18 dimensions (cabact_f[1-9]rfodstide and cabact_c[1-9]rfodsitide) using the hierarchies stored in rfoade.
The failing request is generated by Mondrian when trying to view the resulting OLAP cube.
Franck
Le vendredi 24 juillet 2009 à 22:27 +0200, Franck Routier a écrit :
Hi,
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ?
Franck
The ddl is the following:
CREATE TABLE cabact ( cabactcsu integer NOT NULL, cabact___rforefide character varying(32) NOT NULL, cabact___rteprcide character varying(32) NOT NULL, cabact___rtestdide character varying(32) NOT NULL, cabact___rfovsnide character varying(32) NOT NULL, cabactlil character varying(100) NOT NULL, cabactlic character varying(32) NOT NULL, cabacttxt character varying(1500), cabact___rfontride character varying(32), cabact_f1rfodstide character varying(32), cabact_f2rfodstide character varying(32), cabact_f3rfodstide character varying(32), cabact_f4rfodstide character varying(32), cabact_f5rfodstide character varying(32), cabact_f6rfodstide character varying(32), cabact_f7rfodstide character varying(32), cabact_f8rfodstide character varying(32), cabact_f9rfodstide character varying(32), cabact_c1rfodstide character varying(32), cabact_c2rfodstide character varying(32), cabact_c3rfodstide character varying(32), cabact_c4rfodstide character varying(32), cabact_c5rfodstide character varying(32), cabact_c6rfodstide character varying(32), cabact_c7rfodstide character varying(32), cabact_c8rfodstide character varying(32), cabact_c9rfodstide character varying(32), cabactqte double, cabact___rfountide character varying(32), cabactdtd timestamp with time zone NOT NULL, cabactdtf timestamp with time zone NOT NULL, cabactax1 integer NOT NULL DEFAULT 1, cabactax2 integer NOT NULL DEFAULT 2, cabactax3 integer NOT NULL DEFAULT 3, cabactax4 integer NOT NULL DEFAULT 4, cabactax5 integer NOT NULL DEFAULT 5, cabactax6 integer NOT NULL DEFAULT 6, cabactax7 integer NOT NULL DEFAULT 7, cabactax8 integer NOT NULL DEFAULT 8, cabactax9 integer NOT NULL DEFAULT 9 );
CREATE TABLE rfoade ( rfoade___rforefide character varying(50) NOT NULL, rfoade___rfovdeide character varying(50) NOT NULL, rfoade_i_rfodstide character varying(50) NOT NULL, rfoadeaxe integer DEFAULT 0 NOT NULL, rfoadervs integer NOT NULL, rfoadenpm integer DEFAULT 1, rfoade_s_rfodstide character varying(32) NOT NULL, rfoadegch character varying(120) DEFAULT 'AAAAA' NOT NULL, rfoadedrt character varying(120) DEFAULT 'ZZZZZ' NOT NULL, rfoadeniv integer DEFAULT 0 NOT NULL, rfoadetxt character varying(1800), rfoadenum integer DEFAULT 99999 NOT NULL, rfoadeden integer DEFAULT 999 NOT NULL, rfoadechm character varying(5500) DEFAULT 'INVALID' NOT NULL, rfoadeord integer DEFAULT 999999 NOT NULL );
And the query is:
select * from cabact where cabact___rforefide = 'FHSJ' and cabact___rteprcide = 'CPTANA' and cabact___rtestdide = '100' and cabact___rfovsnide = '200805_001' and (cabact_f1rfodstide IS NULL or cabact_f1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f2rfodstide IS NULL or cabact_f2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f3rfodstide IS NULL or cabact_f3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f4rfodstide IS NULL or cabact_f4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f5rfodstide IS NULL or cabact_f5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f6rfodstide IS NULL or cabact_f6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f7rfodstide IS NULL or cabact_f7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f8rfodstide IS NULL or cabact_f8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f9rfodstide IS NULL or cabact_f9rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c1rfodstide IS NULL or cabact_c1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c2rfodstide IS NULL or cabact_c2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c3rfodstide IS NULL or cabact_c3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c4rfodstide IS NULL or cabact_c4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c5rfodstide IS NULL or cabact_c5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c6rfodstide IS NULL or cabact_c6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c7rfodstide IS NULL or cabact_c7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c8rfodstide IS NULL or cabact_c8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1'))
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
-- Sjoerd Mullender
Done. Bug #2827784 Le lundi 27 juillet 2009 à 11:13 +0200, Sjoerd Mullender a écrit :
It's clear this is a bug. Can you report it on the Sourceforge bugtracker [1] please?
[1] https://sourceforge.net/tracker/?group_id=56967&atid=482468
On 2009-07-27 11:04, Franck Routier wrote:
Hi,
just to make it clear on the use case, the 'cabact' table is a fact table and 'rfoade' is a hierarchy table. Cabact has 18 dimensions (cabact_f[1-9]rfodstide and cabact_c[1-9]rfodsitide) using the hierarchies stored in rfoade.
The failing request is generated by Mondrian when trying to view the resulting OLAP cube.
Franck
Le vendredi 24 juillet 2009 à 22:27 +0200, Franck Routier a écrit :
Hi,
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ?
Franck
The ddl is the following:
CREATE TABLE cabact ( cabactcsu integer NOT NULL, cabact___rforefide character varying(32) NOT NULL, cabact___rteprcide character varying(32) NOT NULL, cabact___rtestdide character varying(32) NOT NULL, cabact___rfovsnide character varying(32) NOT NULL, cabactlil character varying(100) NOT NULL, cabactlic character varying(32) NOT NULL, cabacttxt character varying(1500), cabact___rfontride character varying(32), cabact_f1rfodstide character varying(32), cabact_f2rfodstide character varying(32), cabact_f3rfodstide character varying(32), cabact_f4rfodstide character varying(32), cabact_f5rfodstide character varying(32), cabact_f6rfodstide character varying(32), cabact_f7rfodstide character varying(32), cabact_f8rfodstide character varying(32), cabact_f9rfodstide character varying(32), cabact_c1rfodstide character varying(32), cabact_c2rfodstide character varying(32), cabact_c3rfodstide character varying(32), cabact_c4rfodstide character varying(32), cabact_c5rfodstide character varying(32), cabact_c6rfodstide character varying(32), cabact_c7rfodstide character varying(32), cabact_c8rfodstide character varying(32), cabact_c9rfodstide character varying(32), cabactqte double, cabact___rfountide character varying(32), cabactdtd timestamp with time zone NOT NULL, cabactdtf timestamp with time zone NOT NULL, cabactax1 integer NOT NULL DEFAULT 1, cabactax2 integer NOT NULL DEFAULT 2, cabactax3 integer NOT NULL DEFAULT 3, cabactax4 integer NOT NULL DEFAULT 4, cabactax5 integer NOT NULL DEFAULT 5, cabactax6 integer NOT NULL DEFAULT 6, cabactax7 integer NOT NULL DEFAULT 7, cabactax8 integer NOT NULL DEFAULT 8, cabactax9 integer NOT NULL DEFAULT 9 );
CREATE TABLE rfoade ( rfoade___rforefide character varying(50) NOT NULL, rfoade___rfovdeide character varying(50) NOT NULL, rfoade_i_rfodstide character varying(50) NOT NULL, rfoadeaxe integer DEFAULT 0 NOT NULL, rfoadervs integer NOT NULL, rfoadenpm integer DEFAULT 1, rfoade_s_rfodstide character varying(32) NOT NULL, rfoadegch character varying(120) DEFAULT 'AAAAA' NOT NULL, rfoadedrt character varying(120) DEFAULT 'ZZZZZ' NOT NULL, rfoadeniv integer DEFAULT 0 NOT NULL, rfoadetxt character varying(1800), rfoadenum integer DEFAULT 99999 NOT NULL, rfoadeden integer DEFAULT 999 NOT NULL, rfoadechm character varying(5500) DEFAULT 'INVALID' NOT NULL, rfoadeord integer DEFAULT 999999 NOT NULL );
And the query is:
select * from cabact where cabact___rforefide = 'FHSJ' and cabact___rteprcide = 'CPTANA' and cabact___rtestdide = '100' and cabact___rfovsnide = '200805_001' and (cabact_f1rfodstide IS NULL or cabact_f1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f2rfodstide IS NULL or cabact_f2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f3rfodstide IS NULL or cabact_f3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f4rfodstide IS NULL or cabact_f4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f5rfodstide IS NULL or cabact_f5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f6rfodstide IS NULL or cabact_f6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f7rfodstide IS NULL or cabact_f7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f8rfodstide IS NULL or cabact_f8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f9rfodstide IS NULL or cabact_f9rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c1rfodstide IS NULL or cabact_c1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c2rfodstide IS NULL or cabact_c2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c3rfodstide IS NULL or cabact_c3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c4rfodstide IS NULL or cabact_c4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c5rfodstide IS NULL or cabact_c5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c6rfodstide IS NULL or cabact_c6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c7rfodstide IS NULL or cabact_c7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c8rfodstide IS NULL or cabact_c8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1'))
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
-- Sjoerd Mullender
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
Thanks. As you've probably already seen, I (claim to have) fixed the bug already. The fix will be in the next bug fix release. I have already built the release candidate which we will test internally before actually releasing it. Franck Routier wrote:
Done.
Bug #2827784
Le lundi 27 juillet 2009 à 11:13 +0200, Sjoerd Mullender a écrit :
It's clear this is a bug. Can you report it on the Sourceforge bugtracker [1] please?
[1] https://sourceforge.net/tracker/?group_id=56967&atid=482468
On 2009-07-27 11:04, Franck Routier wrote:
Hi,
just to make it clear on the use case, the 'cabact' table is a fact table and 'rfoade' is a hierarchy table. Cabact has 18 dimensions (cabact_f[1-9]rfodstide and cabact_c[1-9]rfodsitide) using the hierarchies stored in rfoade.
The failing request is generated by Mondrian when trying to view the resulting OLAP cube.
Franck
Le vendredi 24 juillet 2009 à 22:27 +0200, Franck Routier a écrit :
Hi,
Monetdb is segfaulting, probably while interpreting a query or planning it. I first thought it had to do with data, but after emptying the tables, the query still makes monetdb segfault.
Error in syslog says:
[ 1230.812708] mserver5[5369]: segfault at 7fab4c2b5ff8 ip 00007fab4f894285 sp 00007fab4c2b6000 error 6 in lib_sql.so.2.30.2[7fab4f7e3000+116000]
Following is the faulty ddl / query. Is there anything I can do to help debug this ?
Franck
The ddl is the following:
CREATE TABLE cabact ( cabactcsu integer NOT NULL, cabact___rforefide character varying(32) NOT NULL, cabact___rteprcide character varying(32) NOT NULL, cabact___rtestdide character varying(32) NOT NULL, cabact___rfovsnide character varying(32) NOT NULL, cabactlil character varying(100) NOT NULL, cabactlic character varying(32) NOT NULL, cabacttxt character varying(1500), cabact___rfontride character varying(32), cabact_f1rfodstide character varying(32), cabact_f2rfodstide character varying(32), cabact_f3rfodstide character varying(32), cabact_f4rfodstide character varying(32), cabact_f5rfodstide character varying(32), cabact_f6rfodstide character varying(32), cabact_f7rfodstide character varying(32), cabact_f8rfodstide character varying(32), cabact_f9rfodstide character varying(32), cabact_c1rfodstide character varying(32), cabact_c2rfodstide character varying(32), cabact_c3rfodstide character varying(32), cabact_c4rfodstide character varying(32), cabact_c5rfodstide character varying(32), cabact_c6rfodstide character varying(32), cabact_c7rfodstide character varying(32), cabact_c8rfodstide character varying(32), cabact_c9rfodstide character varying(32), cabactqte double, cabact___rfountide character varying(32), cabactdtd timestamp with time zone NOT NULL, cabactdtf timestamp with time zone NOT NULL, cabactax1 integer NOT NULL DEFAULT 1, cabactax2 integer NOT NULL DEFAULT 2, cabactax3 integer NOT NULL DEFAULT 3, cabactax4 integer NOT NULL DEFAULT 4, cabactax5 integer NOT NULL DEFAULT 5, cabactax6 integer NOT NULL DEFAULT 6, cabactax7 integer NOT NULL DEFAULT 7, cabactax8 integer NOT NULL DEFAULT 8, cabactax9 integer NOT NULL DEFAULT 9 );
CREATE TABLE rfoade ( rfoade___rforefide character varying(50) NOT NULL, rfoade___rfovdeide character varying(50) NOT NULL, rfoade_i_rfodstide character varying(50) NOT NULL, rfoadeaxe integer DEFAULT 0 NOT NULL, rfoadervs integer NOT NULL, rfoadenpm integer DEFAULT 1, rfoade_s_rfodstide character varying(32) NOT NULL, rfoadegch character varying(120) DEFAULT 'AAAAA' NOT NULL, rfoadedrt character varying(120) DEFAULT 'ZZZZZ' NOT NULL, rfoadeniv integer DEFAULT 0 NOT NULL, rfoadetxt character varying(1800), rfoadenum integer DEFAULT 99999 NOT NULL, rfoadeden integer DEFAULT 999 NOT NULL, rfoadechm character varying(5500) DEFAULT 'INVALID' NOT NULL, rfoadeord integer DEFAULT 999999 NOT NULL );
And the query is:
select * from cabact where cabact___rforefide = 'FHSJ' and cabact___rteprcide = 'CPTANA' and cabact___rtestdide = '100' and cabact___rfovsnide = '200805_001' and (cabact_f1rfodstide IS NULL or cabact_f1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f2rfodstide IS NULL or cabact_f2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f3rfodstide IS NULL or cabact_f3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f4rfodstide IS NULL or cabact_f4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f5rfodstide IS NULL or cabact_f5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f6rfodstide IS NULL or cabact_f6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f7rfodstide IS NULL or cabact_f7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f8rfodstide IS NULL or cabact_f8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_f9rfodstide IS NULL or cabact_f9rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c1rfodstide IS NULL or cabact_c1rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c2rfodstide IS NULL or cabact_c2rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c3rfodstide IS NULL or cabact_c3rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c4rfodstide IS NULL or cabact_c4rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c5rfodstide IS NULL or cabact_c5rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c6rfodstide IS NULL or cabact_c6rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c7rfodstide IS NULL or cabact_c7rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1')) and (cabact_c8rfodstide IS NULL or cabact_c8rfodstide IN (select rfoade_i_rfodstide from rfoade where rfoade___rfovdeide='SECA' and rfoade___rforefide = 'FHSJ' and rfoadervs='1'))
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
-- Sjoerd Mullender
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
------------------------------------------------------------------------------ _______________________________________________ MonetDB-users mailing list MonetDB-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-users
-- Sjoerd Mullender
participants (5)
-
Franck Routier
-
Martin Kersten
-
Sjoerd Mullender
-
Stefan de Konink
-
Stefan Manegold