[gecode-users] strange bug in propagation

jeremie.vautard jeremie.vautard at laposte.net
Fri Apr 14 22:23:55 CEST 2006


Hi ! 

I encountered a very strange bug while testing my extensively
defined binary constraint propagator. Under some conditions
that I havn't really discovered right now (it seems to be at
least with 3 of my propagators posted, but this is not
sufficient), I get a segmentation fault after several steps of
propagation. The most strange is that the instruction causing
the bug is in the gecode part : gdb tells me the crash occur
here : 

#0  Gecode::Int::IntVarImp::nq_full (this=0x80542f4,
home=0x8053fa0, m=3) at ././kernel/memory-manager.icc:233
233         _next = n;
(gdb) bt
#0  Gecode::Int::IntVarImp::nq_full (this=0x80542f4,
home=0x8053fa0, m=3) at ././kernel/memory-manager.icc:233
#1  0x0804f047 in ExtensiveBinaryConstraint::check
(this=0xbf840164, home=0x8053fa0, x=
        {<Gecode::VariableViewBase<Gecode::Int::IntVarImp>> =
{var = 0x805437c}, <No data fields>}, y=
        {<Gecode::VariableViewBase<Gecode::Int::IntVarImp>> =
{var = 0x80542f4}, <No data fields>})
    at ./int/var/imp.icc:364
#2  0x0804f0ed in ExtensiveBinaryPropagator::propagate
(this=0x807400c, home=0x8053fa0) at QSolve.cc:666
#3  0xb7f1b218 in Gecode::Space::propagators (this=0x8053fa0)
at kernel/core.cc:160
#4  0xb7f1b7a3 in Gecode::Space::status (this=0x8053fa0,
a=@0x80300c0, pn=@0xbf840254) at kernel/core.cc:254

(The ExtensiveBinaryPropagator propagate() method does nothing
but call an ExtensiveBinaryConstraint::check(Space* home,
Intview x,y) method which actually remove the values and
returns ES_NOFIX, ES_FAILED or ES_SUBSUMED).

Have you even encountered this kind of bug when creating
propagators ? Do you have an idea of what I can have done
wrong ? In this particular example, the IntView::nq method is
called to remove 2 from a [1..4] domain...


Jérémie Vautard

Accédez au courrier électronique de La Poste : www.laposte.net ; 
3615 LAPOSTENET (0,34 €/mn) ; tél : 08 92 68 13 50 (0,34€/mn)







More information about the gecode-users mailing list