[CoinUtils-tickets] [COIN-OR Common Utilities] #62: Bug in factorSparseSmall (CoinFactorization2.cpp)

COIN-OR Common Utilities coin-trac at coin-or.org
Sat Apr 17 03:32:49 EDT 2010


#62: Bug in factorSparseSmall (CoinFactorization2.cpp)
-------------------+--------------------------------------------------------
Reporter:  sssiii  |       Type:  defect
  Status:  new     |   Priority:  major 
 Version:          |   Keywords:        
-------------------+--------------------------------------------------------

Comment(by sssiii):

 In the meantime I managed to re-run valgrind with the appropriate debug
 object file (but note that I added some output to CoinFactorization2.cpp,
 so the line numbers for that file do not match). It seems to happen in the
 pivot routine (CoinFactorization2.hpp) that is called by the following
 code fragment in factorSparseSmall:

 #ifndef UGLY_COIN_FACTOR_CODING
             //branch out to best pivot routine
             goodPivot = pivot ( iPivotRow, iPivotColumn,
                                 pivotRowPosition, pivotColumnPosition,
                                 workArea, workArea2,
                                 increment2,  markRow ,
                                 SMALL_SET);     <---  line 377 in my
 version
 #else


 Here the new valgrind output:

 ==28199== Invalid write of size 8
 ==28199==    at 0x5A84A3: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:996)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16085a38 is 0 bytes after a block of size 4,415,504
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596942: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==
 ==28199== Invalid write of size 4
 ==28199==    at 0x5A84D0: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:997)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16973038 is 0 bytes after a block of size 2,207,752
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596969: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==
 ==28199== Invalid read of size 4
 ==28199==    at 0x5A7FA3: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:927)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16973038 is 0 bytes after a block of size 2,207,752
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596969: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==
 ==28199== Invalid read of size 8
 ==28199==    at 0x5A7FBE: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:928)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16085a38 is 0 bytes after a block of size 4,415,504
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596942: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==
 ==28199== Invalid read of size 8
 ==28199==    at 0x5A873B: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:1038)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16085a38 is 0 bytes after a block of size 4,415,504
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596942: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==
 ==28199== Invalid read of size 4
 ==28199==    at 0x5A8758: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:1039)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16973038 is 0 bytes after a block of size 2,207,752
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596969: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==
 ==28199== Invalid write of size 8
 ==28199==    at 0x5A8789: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:1040)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16085a38 is 0 bytes after a block of size 4,415,504
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596942: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==
 ==28199== Invalid write of size 4
 ==28199==    at 0x5A87B3: bool CoinFactorization::pivot<unsigned
 short>(int, int, int, int, double*, unsigned*, int, unsigned short*, int)
 (CoinFactorization.hpp:1041)
 ==28199==    by 0x5A1150: CoinFactorization::factorSparseSmall()
 (CoinFactorization2.cpp:377)
 ==28199==    by 0x59FD4D: CoinFactorization::factorSparse()
 (CoinFactorization2.cpp:50)
 ==28199==    by 0x59DF2E: CoinFactorization::factor() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0EF5: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==  Address 0x16973038 is 0 bytes after a block of size 2,207,752
 alloc'd
 ==28199==    at 0x4C2492C: operator new[](unsigned long) (in
 /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
 ==28199==    by 0x5BA375: CoinArrayWithLength::conditionalNew(long) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x596969: CoinFactorization::getAreas(int, int, int, int)
 (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x6A0BD1: ClpFactorization::factorize(ClpSimplex*, int,
 bool) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x753D4E: ClpSimplex::internalFactorize(int) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x737A34: ClpSimplexDual::statusOfProblemInDual(int&, int,
 double*, ClpDataSave&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x739FDE: ClpSimplexDual::fastDual(bool) (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x7F8E82: OsiClpSolverInterface::solveFromHotStart() (in
 /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8B60E6: CbcNode::chooseDynamicBranch(CbcModel*,
 CbcNode*, OsiSolverBranch*&, int) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x89CF75: CbcModel::chooseBranch(CbcNode*&, int, CbcNode*,
 OsiCuts&, bool&, CoinWarmStartBasis*, double const*, double const*,
 OsiSolverBranch*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A3937: CbcModel::doOneNode(CbcModel*, CbcNode*&,
 CbcNode*&) (in /home/tosch/bin/lpseg.debug.L64)
 ==28199==    by 0x8A8677: CbcModel::branchAndBound(int) (in
 /home/tosch/bin/lpseg.debug.L64)

-- 
Ticket URL: <https://projects.coin-or.org/CoinUtils/ticket/62#comment:1>
COIN-OR Common Utilities <http://projects.coin-or.org/CoinUtils>
Common data structures and linear algebra functions for COIN-OR projects



More information about the CoinUtils-tickets mailing list