[Clp] Memory corruption writing ClpSimplex::savedSolution_ / ClpSimplex::saveStatus_

Sebastian Theophil stheophil at think-cell.com
Wed Aug 19 08:47:07 EDT 2009


Hi,


I have a reproducible crash using the latest Clp trunk. I have not found
a simple reproduction so far but I think I have figured out how the
error occurs:

OsiClpSolverInterface solver;
solver.setupForRepeatedUse(2);

// Setup problem with M rows / N columns

solver.initialSolve(); // <- may internally call modelPtr_->dual(0, 7)

// now solver.modelPtr_->saveStatus_ and savedSolution still exist
having M+N entries
// Change problem size to M' > M and N' > N
// ClpModel::resize resizes many arrays but of course not saveStatus_
and savedSolution_

// if this goes down to statusOfProblemInPrimal / statusOfProblemInDual,
saveStatus_ and savedSolution_ are overwritten with M'+N' entries
solver.initialSolve(); 


It seems to me, the error is not resizing or deleting saveStatus_ and
savedSolution_ when the problem size changes. Is there a simple fix to
this problem?

Regards
Sebastian

--
Sebastian Theophil . stheophil at think-cell.com
Software Engineer
 
think-cell Software GmbH . Invalidenstr. 34 . 10115 Berlin, Germany 
http://www.think-cell.com . phone +49-30-666473-10 . toll-free (US) +1-800-891-8091
Directors: Dr. Markus Hannebauer, Dr. Arno Schoedl . Amtsgericht Berlin-Charlottenburg, HRB 85229





More information about the Clp mailing list