Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Bug (crash) report in cplex

    Posted 10/31/12 05:30 AM

    Originally posted by: JorisK


    Dear,

    I'm currently implementing a Branch-and-Cut using cplex. For the cut procedure, I'm using IloCplex.LazyConstraintCallback. While implementing, I mistakenly wrote the following in the implementation of the main() function of my LazyConstraintCallback:

    IloConstraint subtourConstr=this.add(cplex.addGe(subtourExpr, 0, "subTour"));

    What I should have written:
    IloConstraint subtourConstr=this.add(cplex.ge(subtourExpr, 0, "subTour"));

    Nevertheless, when I run the first line, a pretty hard crash follows:

    #
    1. A fatal error has been detected by the Java Runtime Environment:
    #
    1. SIGSEGV (0xb) at pc=0x00007f7995cc4e86, pid=5436, tid=140160405821184
    #
    1. JRE version: 6.0_24-b24
    2. Java VM: OpenJDK 64-Bit Server VM (20.0-b12 mixed mode linux-amd64 compressed oops)
    3. Derivative: IcedTea6 1.11.5
    4. Distribution: Ubuntu 11.10, package 6b24-1.11.5-0ubuntu1~11.10.1
    5. Problematic frame:
    6. C http://libcplex124.so+0x463e86 CPXcutcallbackadd+0xc6
    #
    1. An error report file with more information is saved as:
    2. /home/jkinable/workspace/RingStar/hs_err_pid5436.log
    #
    1. If you would like to submit a bug report, please include
    2. instructions how to reproduce the bug and visit:
    3. https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
    4. The crash happened outside the Java Virtual Machine in native code.
    5. See problematic frame for where to report the bug.
    #

    Whenever possible, I would suggest to catch this error in a bit more elegant fashion, instead of crashing the Java Runtime environment.

    Ps. I could not find a channel where I could file bugs related to cplex, hence my post on the forum.
    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Bug (crash) report in cplex

    Posted 10/31/12 12:13 PM

    Originally posted by: SystemAdmin


    There is no explicit website for bug reports. So reporting them in the Forum is fine.
    As you observed, modifying a problem via addLe() and friends while it is being solved is unsupported behavior. Functions like addLe() even have this comment in their reference documentation:
    Do not use this method in a callback to modify the model currently being optimized.
    

    So undefined behavior (in this case a crash) is acceptable.
    Of course, we cannot guard against all potential mis-uses of CPLEX. Still, I filed a user wish to see if we can handle this error more gracefully and throw an exception instead.
    Thanks for your report!
    #CPLEXOptimizers
    #DecisionOptimization