Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test failure when Data/Sample is not available #184

Open
havardAasen opened this issue Dec 21, 2023 · 1 comment
Open

Test failure when Data/Sample is not available #184

havardAasen opened this issue Dec 21, 2023 · 1 comment

Comments

@havardAasen
Copy link
Contributor

This relates to stable/0.108 branch, tested with CoinUtils 2.11.10 and as the title says, without the directory Data.

We begin with a segfault in

bool OsiColCut::feasible(const OsiSolverInterface &im) const

This is fixed with commit 5c401b5, I'm not sure if it is a underlying problem that's still unresolved by this patch, it's obvious that the tests will fail, though I haven't looked at why column information is not available.

Whit the patch applied, the unit tests completes with 12 unexpected error

Log from unit tests
Testing OsiRowCut with OsiTestSolverInterface
Coin6001E Unable to open mps input file ../../Data/Sample/exmip1.mps
*** osirowcutSolverInterface testing issue: read MPS failed: imP->readMps(fn.c_str(), "mps") == 0
Coin6001E Unable to open mps input file ../../Data/Sample/exmip1.mps
*** osirowcutSolverInterface testing issue: read MPS failed: imP->readMps(fn.c_str(), "mps") == 0
*** osirowcutSolverInterface testing issue: consistent(IntegerModel) failed: cut.consistent(*imP)
Coin6001E Unable to open mps input file ../../Data/Sample/exmip1.mps
*** osirowcutSolverInterface testing issue: read MPS failed: imP->readMps(fn.c_str(), "mps") == 0
Testing OsiColCut with OsiTestSolverInterface
Coin6001E Unable to open mps input file ../../Data/Sample/exmip1.mps
Coin6001E Unable to open mps input file ../../Data/Sample/exmip1.mps
*** osicolcutSolverInterface testing issue: consistent(IntegerModel) failed: cut.consistent(*imP)
*** osicolcutSolverInterface testing issue: consistent(IntegerModel) failed: cut.consistent(*imP)
*** osicolcutSolverInterface testing issue: consistent(IntegerModel) failed: cut.consistent(*imP)
*** osicolcutSolverInterface testing issue: infeasible(IntegerModel) failed: cut.infeasible(*imP)
*** osicolcutSolverInterface testing issue: consistent(IntegerModel) failed: cut.consistent(*imP)
Coin6001E Unable to open mps input file ../../Data/Sample/exmip1.mps
*** osicolcutSolverInterface testing issue: infeasible(IntegerModel) failed: cut.infeasible(*imP)
*** osicolcutSolverInterface testing issue: infeasible(IntegerModel) failed: cut.infeasible(*imP)
Testing OsiCuts
Testing OsiTestSolverInterface
vol: running common unit tests.
Testing empty solver interface ... 
Coin6001E Unable to open mps input file ../../Data/Sample/exmip1.mps
*** volSolverInterface testing issue: read MPS file failed: exmip1Si->readMps(fn.c_str(), "mps") == 0
***Skipped Testing of OsiSolverInterface on Netlib problems***
***use -testOsiSolverInterface to run them.***
ERROR     osirowcut read MPS
                    imP->readMps(fn.c_str(), "mps") == 0
                    OsiRowCutTest.cpp:255
ERROR     osirowcut read MPS
                    imP->readMps(fn.c_str(), "mps") == 0
                    OsiRowCutTest.cpp:297
ERROR     osirowcut consistent(IntegerModel)
                    cut.consistent(*imP)
                    OsiRowCutTest.cpp:308
ERROR     osirowcut read MPS
                    imP->readMps(fn.c_str(), "mps") == 0
                    OsiRowCutTest.cpp:321
ERROR     osicolcut consistent(IntegerModel)
                    cut.consistent(*imP)
                    OsiColCutTest.cpp:227
ERROR     osicolcut consistent(IntegerModel)
                    cut.consistent(*imP)
                    OsiColCutTest.cpp:232
ERROR     osicolcut consistent(IntegerModel)
                    cut.consistent(*imP)
                    OsiColCutTest.cpp:236
ERROR     osicolcut infeasible(IntegerModel)
                    cut.infeasible(*imP)
                    OsiColCutTest.cpp:237
ERROR     osicolcut consistent(IntegerModel)
                    cut.consistent(*imP)
                    OsiColCutTest.cpp:242
ERROR     osicolcut infeasible(IntegerModel)
                    cut.infeasible(*imP)
                    OsiColCutTest.cpp:258
ERROR     osicolcut infeasible(IntegerModel)
                    cut.infeasible(*imP)
                    OsiColCutTest.cpp:263
ERROR     vol       read MPS file
                    exmip1Si->readMps(fn.c_str(), "mps") == 0
                    OsiSolverInterfaceTest.cpp:3905
Severity NOTE      :    0  thereof expected:    0
Severity PASSED    :  345  thereof expected:    0
Severity WARNING   :    0  thereof expected:    0
Severity ERROR     :   12  thereof expected:    0
Tests completed with 12 unexpected errors

As can be seen from the log, 4 tests fails because it can't read ../../Data/Sample/exmip1.mps, 3 tests fails with the patch I mentioned earlier, column information is not available.

I haven't looked at why the last 5 tests fails, however, of these 5 failed tests, only 1 still fails when Data/Sample is available.


If I run the tests when Data/Sample/exmip1.mps is available I get 1 error.

ERROR     vol       cloning of application data
                    *(static_cast< int * >(si2->getApplicationData())) == ad
                    OsiSolverInterfaceTest.cpp:4041

This error was fixed by applying this commit 192b006

@jpfeuffer
Copy link

@tkralphs This sounds exactly like the same problem we are facing for conda
conda-forge/coin-or-osi-feedstock#15

What should we do here?

jpfeuffer added a commit to jpfeuffer/coin-or-osi-feedstock that referenced this issue Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants