[Clp-tickets] [COIN-OR Linear Programming Solver] #2: Access violation in initial solve

COIN-OR Linear Programming Solver coin-trac at coin-or.org
Tue Sep 5 01:53:19 EDT 2006


#2: Access violation in initial solve
------------------------+---------------------------------------------------
 Reporter:  San         |       Owner:  somebody
     Type:  defect      |      Status:  new     
 Priority:  major       |   Milestone:          
Component:  component1  |     Version:          
 Keywords:              |  
------------------------+---------------------------------------------------
 Hi.  I get an exception on some problems that I'm running.  It appears
 that it crashes on the following method because 'si' is NULL.


 {{{
 CoinPresolveMatrix::CoinPresolveMatrix(int ncols0_in,
                                      double maxmin,
                                      // end prepost members
                                      ClpSimplex * si,
                                      // rowrep
                                      int nrows_in,
                                      CoinBigIndex nelems_in,
                                        bool doStatus,
                                        double nonLinearValue,
                                        double bulkRatio)
 {
     ...
     memcpy(sol_,si->primalColumnSolution(),ncols_*sizeof(double));;
     ...
 }

 }}}


 The following is my stack trace:

 {{{
         test.exe!memcpy(unsigned char * dst=0x1b6e4d98, unsigned char *
 src=0x00000000, unsigned long count=1152)  Line 188     Asm
         test.exe!CoinPresolveMatrix::CoinPresolveMatrix(int ncols0_in=144,
 double maxmin=-1.0000000000000000, ClpSimplex * si=0x1b70f288, int
 nrows_in=0, int nelems_in=0, bool doStatus=true, double
 nonLinearValue=0.00000000000000000, double bulkRatio=2.0000000000000000)
 Line 1175 + 0x1e bytes  C++
         test.exe!ClpPresolve::gutsOfPresolvedModel(ClpSimplex *
 originalModel=0x0012f040, double feasibilityTolerance=1.0000000000000000e-
 008, bool keepIntegers=false, int numberPasses=5, bool dropNames=true,
 bool doRowObjective=false)  Line 1467 + 0x47 bytes     C++
         test.exe!ClpPresolve::presolvedModel(ClpSimplex & si={...}, double
 feasibilityTolerance=1.0000000000000000e-008, bool keepIntegers=false, int
 numberPasses=5, bool dropNames=true, bool doRowObjective=false)  Line 102
 + 0x2c bytes    C++
         test.exe!ClpSimplex::initialSolve(ClpSolve & options={...})  Line
 590 + 0x2d bytes      C++
         test.exe!OsiClpSolverInterface::initialSolve()  Line 275
 C++
         test.exe!CbcModel::initialSolve()  Line 1992 + 0x14 bytes
 C++
 >       test.exe!Solver::CbcSolver::solve()  Line 368   C++
         test.exe!Solver::AbstractSolver::optimise()  Line 292   C++
 test.exe!GradeConstraintTest::testGradeConstraintAgainstmmxCoinScheduler_byBench()
 Line 317    C++
         test.exe!CppUnit::TestCaller<GradeConstraintTest>::runTest()  Line
 173  C++
         test.exe!CppUnit::TestCaseMethodFunctor::operator()()  Line 32 +
 0x16 bytes     C++
         test.exe!CppUnit::DefaultProtector::protect(const CppUnit::Functor
 & functor={...}, const CppUnit::ProtectorContext & context={...})  Line 15
 + 0xf bytes       C++
         test.exe!CppUnit::ProtectorChain::ProtectFunctor::operator()()
 Line 20 + 0x23 bytes    C++
         test.exe!CppUnit::ProtectorChain::protect(const CppUnit::Functor &
 functor={...}, const CppUnit::ProtectorContext & context={...})  Line 77 +
 0xf bytes C++
         test.exe!CppUnit::TestResult::protect(const CppUnit::Functor &
 functor={...}, CppUnit::Test * test=0x1db21170, const
 std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
 shortDescription="")  Line 178 + 0x1d bytes C++
         test.exe!CppUnit::TestCase::run(CppUnit::TestResult *
 result=0x0012fe94)  Line 92 + 0x85 bytes  C++
 test.exe!CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult *
 controller=0x0012fe94)  Line 64 + 0x30 bytes     C++
         test.exe!CppUnit::TestComposite::run(CppUnit::TestResult *
 result=0x0012fe94)  Line 23 + 0x13 bytes     C++
 test.exe!CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult *
 controller=0x0012fe94)  Line 64 + 0x30 bytes     C++
         test.exe!CppUnit::TestComposite::run(CppUnit::TestResult *
 result=0x0012fe94)  Line 23 + 0x13 bytes     C++
 test.exe!CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult *
 result=0x0012fe94)  Line 46 + 0x1e bytes C++
         test.exe!CppUnit::TestResult::runTest(CppUnit::Test *
 test=0x1c37bd30)  Line 145 + 0x13 bytes   C++
         test.exe!CppUnit::TestRunner::run(CppUnit::TestResult &
 controller={...}, const
 std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
 testPath="")  Line 95 + 0x13 bytes       C++
         test.exe!main(int argc=1, char * * argv=0x02323690)  Line 46 +
 0x30 bytes       C++
         test.exe!__tmainCRTStartup()  Line 318 + 0x19 bytes     C
         test.exe!mainCRTStartup()  Line 187     C
         kernel32.dll!7d4e992a()
         [Frames below may be incorrect and/or missing, no symbols loaded
 for kernel32.dll]

 }}}

-- 
Ticket URL: <https://projects.coin-or.org/Clp/ticket/2>
COIN-OR Linear Programming Solver <http://example.com/>
My example project


More information about the Clp-tickets mailing list