Ticket #4435 (closed defect: fixed)

Opened 6 years ago

Last modified 5 years ago

'Enum' object has no attribute 'solverError'

Reported by: hanspirnay@… Owned by: unassigned
Priority: normal Milestone: Coopr 3.4
Component: pyomo.opt Version:
Keywords: TerminationCondition Cc:


When solving a model with Ipopt within a script, the search direction becomes to small. Coopr doesn't seem to like this:

EXIT: Search Direction is becoming Too Small.

Ipopt 3.10.1: Search Direction becomes Too Small.
ERROR: Failed to load python module=mymodel.py:
'Enum' object has no attribute 'solverError'
ERROR: Unexpected exception while loading model mymodel.py
'Enum' object has no attribute 'solverError'

(the following is guesswork by someone completely unfamiliar with the code...)

Debugging into this, it seems that the 'Enum' object coopr is talking about is TerminationCondition?, and solverError is indeed not defined in COOPR_BASE/src/coopr.opt/coopr/opt/results/solver.py

So what's the correct TerminationCondition?? to me, "Search Direction is becoming too small" is more of an "OK"-type termination (similar to maxEvaluations), not really an ERROR-type termination (which it is classified as right now). The important difference to me as the user is that after an ERROR, coopr won't let me load the results.

Change History

comment:1 Changed 6 years ago by gabeh

Referenced in changeset [6786]:

Minor fixes to Enum use in sol reader. Changing TerminationCondition?.solverError (does not exist) to TerminationCondition?.internalSolverError (fixes #4435).

comment:2 Changed 5 years ago by wehart

  • Status changed from new to closed
  • Resolution set to fixed
  • Milestone set to Coopr 3.4

It appears that this was fixed.

Note: See TracTickets for help on using tickets.