ds4dm/Tulip.jl

Issue with getting ConstraintFunction

blegat opened this issue · 3 comments

See https://ericphanson.github.io/ConvexTests.jl/dev/Tulip/:

Error in testset dsos_univariate_sum:
Error During Test at /home/runner/work/ConvexTests.jl/ConvexTests.jl/src/ConvexTests.jl:37
  Got exception outside of a @test
  BoundsError: attempt to access 7-element Array{MathOptInterface.VariableIndex,1} at index [8]
  Stacktrace:
   [1] getindex at ./array.jl:744 [inlined]
   [2] get(::Tulip.Optimizer{Float64}, ::MathOptInterface.ConstraintFunction, ::MathOptInterface.ConstraintIndex{MathOptInterface.ScalarAffineFunction{Float64},MathOptInterface.GreaterThan{Float64}}) at /home/runner/.julia/packages/Tulip/w8T7U/src/Interfaces/MOI/constraints.jl:467
   [3] get at /home/runner/.julia/packages/MathOptInterface/bygN7/src/Bridges/bridge_optimizer.jl:812 [inlined]

The error was caused by a bug in Tulip's internal deletion of constraints and variables. This should be fixed now.

@blegat the bug occurred when a constraint/variable other than the last was deleted. If it makes sense I can add a test to MOI, since Tulip was passing the MOI tests despite the bug.
@ericphanson is it possible to run the ConvexTests once #53 is merged?

I’ve retriggered CI so the website should update in 30 mins or so once the docs stage finishes.

edit: it turns out clicking rerun all jobs in github actions is not enough, so I created a fake file to retrigger things...

Yes, we should add a UnitTest for that in MOI