Uploaded image for project: 'OptaPlanner'
  1. OptaPlanner
  2. PLANNER-55

Benchmarker should support custom reading and writing of solutions (it should not enforce 1 specific xstream configuration)

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Done
    • Icon: Critical Critical
    • 5.4.0.Final
    • None
    • optaplanner-core
    • java version "1.6.0_22"
      OpenJDK Runtime Environment (IcedTea6 1.10.3) (fedora-59.1.10.3.fc15-x86_64)
      OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)

      Title was: Benchmark doesn't allow for de-serializing XMLs with references

      I have a solution configuration serialized via XStream [1]. When I'm attempting to benchmark [2] my solver with that solution, I get the following error:

      [ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2:java (default-cli) on project tournaments: An exception occured while executing the Java class. null: InvocationTargetException: Problem reading unsolvedSolutionFile: src/main/resources/input-tiny.xml: Invalid reference
      [ERROR] ---- Debugging information ----
      [ERROR] reference : ../../group
      [ERROR] class : org.drools.planner.examples.tournaments.model.Team
      [ERROR] required-type : org.drools.planner.examples.tournaments.model.Team
      [ERROR] converter-type : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
      [ERROR] line number : 22
      [ERROR] class[1] : org.drools.planner.examples.tournaments.TournamentsSolution
      [ERROR] version : null
      [ERROR] -------------------------------

      I can see two solutions:
      a) Make it so that Planner benchmark does understand XStream's XML.
      b) Provide a method inside Planner to serialize Solutions in a way that benchmark will understand them later.

      References:
      [1] https://github.com/triceo/Drooling-Tournaments/blob/master/src/main/resources/input-tiny.xml
      [2] https://github.com/triceo/Drooling-Tournaments/blob/master/src/main/resources/benchmarkConfig.xml
      [3] https://github.com/triceo/Drooling-Tournaments

              gdesmet@redhat.com Geoffrey De Smet (Inactive)
              lpetrovi@redhat.com Lukáš Petrovický (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: