[Coin-discuss] valgrind invalid free in ClpModel::returnModel
Matthew Galati
magh at lehigh.edu
Tue May 27 11:46:58 EDT 2008
Hi - I am going to work on an independent driver that is repeatable to
show the following issue -- but it might take some work.
In the mean time, does this valgrind trace tell anyone anything? So far
I can't find anything wrong in how I build the model, but something goes
wrong in ClpModel after an "initialSolve".
Thanks,
Matt
magh at shark:~/COIN/coin-Decomp/build-g/Decomp/examples/AP3$ valgrind
--tool=memcheck --leak-check=yes ./alps_ap3 --param ap3.parm
--AP3:Instance ap3.30.1 > t
==5409== Memcheck, a memory error detector.
==5409== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==5409== Using LibVEX rev 1804, a library for dynamic binary translation.
==5409== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==5409== Using valgrind-3.3.0-Debian, a dynamic binary instrumentation
framework.
==5409== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==5409== For more details, rerun with: -v
==5409==
==5409== Invalid free() / delete / delete[]
==5409== at 0x4023ECC: operator delete[](void*) (vg_replace_malloc.c:364)
==5409== by 0x814E12D: ClpModel::returnModel(ClpModel&)
(ClpModel.cpp:997)
==5409== by 0x81AF071: ClpSimplex::returnModel(ClpSimplex&)
(ClpSimplex.cpp:8033)
==5409== by 0x8142462: OsiClpSolverInterface::initialSolve()
(OsiClpSolverInterface.cpp:365)
==5409== by 0x80646CE: DecompAlgo2::solutionUpdate(DecompPhase, int,
int) (DecompAlgo2.cpp:856)
==5409== by 0x806A34B: DecompAlgo2::phaseInit() (DecompAlgo2.cpp:460)
==5409== by 0x806A7E2: DecompAlgo2::processNode(int, double, double)
(DecompAlgo2.cpp:538)
==5409== by 0x808EA00: AlpsDecompTreeNode::process(bool, bool)
(AlpsDecompTreeNode.cpp:194)
==5409== by 0x80A7110: AlpsSubTree::exploreUnitWork(bool, int,
double, AlpsExitStatus&, int&, int&, bool&)
(AlpsSubTree.cpp
:1209)
==5409== by 0x80A7DBD: AlpsSubTree::exploreSubTree(AlpsTreeNode*,
int, double, int&, int&) (AlpsSubTree.cpp:443)
==5409== by 0x80AEBBB:
AlpsKnowledgeBrokerSerial::rootSearch(AlpsTreeNode*)
(AlpsKnowledgeBrokerSerial.cpp:224)
==5409== by 0x808C1D7: AlpsKnowledgeBroker::search(AlpsModel*)
(AlpsKnowledgeBroker.h:259)
==5409== Address 0x7747958 is 0 bytes inside a block of size 27,090 free'd
==5409== at 0x4023ECC: operator delete[](void*) (vg_replace_malloc.c:364)
==5409== by 0x81A8AF8: ClpSimplex::moveInfo(ClpSimplex const&, bool)
(ClpSimplex.cpp:9541)
==5409== by 0x820F1EA: ClpSimplex::initialSolve(ClpSolve&)
(ClpSolve.cpp:1802)
==5409== by 0x8142329: OsiClpSolverInterface::initialSolve()
(OsiClpSolverInterface.cpp:355)
==5409== by 0x80646CE: DecompAlgo2::solutionUpdate(DecompPhase, int,
int) (DecompAlgo2.cpp:856)
==5409== by 0x806A34B: DecompAlgo2::phaseInit() (DecompAlgo2.cpp:460)
==5409== by 0x806A7E2: DecompAlgo2::processNode(int, double, double)
(DecompAlgo2.cpp:538)
==5409== by 0x808EA00: AlpsDecompTreeNode::process(bool, bool)
(AlpsDecompTreeNode.cpp:194)
==5409== by 0x80A7110: AlpsSubTree::exploreUnitWork(bool, int,
double, AlpsExitStatus&, int&, int&, bool&)
(AlpsSubTree.cpp
:1209)
==5409== by 0x80A7DBD: AlpsSubTree::exploreSubTree(AlpsTreeNode*,
int, double, int&, int&) (AlpsSubTree.cpp:443)
==5409== by 0x80AEBBB:
AlpsKnowledgeBrokerSerial::rootSearch(AlpsTreeNode*)
(AlpsKnowledgeBrokerSerial.cpp:224)
==5409== by 0x808C1D7: AlpsKnowledgeBroker::search(AlpsModel*)
(AlpsKnowledgeBroker.h:259)
More information about the Coin-discuss
mailing list