Opened 5 weeks ago

Last modified 4 days ago

#2996 assigned defect

Exception when cloning IndexedDataRow

Reported by: gkronber Owned by: gkronber
Priority: medium Milestone: HeuristicLab 3.3.16
Component: Optimization Version:
Keywords: Cc:

Description

I loaded an experiment with a QualityPerEvaluationsAnalyser from a file. When I clone the experiment an exception occurrs:

HeuristicLab version: 3.3.15.15587
ArgumentNullException: Value cannot be null.
Parameter name: source
   at System.Linq.Enumerable.Select[TSource,TResult](IEnumerable`1 source, Func`2 selector)
   at HeuristicLab.Analysis.IndexedDataRow`1..ctor(IndexedDataRow`1 original, Cloner cloner)
   at HeuristicLab.Analysis.IndexedDataRow`1.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Core.KeyedItemCollection`2..ctor(KeyedItemCollection`2 original, Cloner cloner)
   at HeuristicLab.Core.NamedItemCollection`1.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Analysis.IndexedDataTable`1..ctor(IndexedDataTable`1 original, Cloner cloner)
   at HeuristicLab.Analysis.IndexedDataTable`1.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Optimization.ResultParameter`1..ctor(ResultParameter`1 original, Cloner cloner)
   at HeuristicLab.Optimization.ResultParameter`1.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Core.KeyedItemCollection`2..ctor(KeyedItemCollection`2 original, Cloner cloner)
   at HeuristicLab.Core.ParameterCollection.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Operators.Operator..ctor(Operator original, Cloner cloner)
   at HeuristicLab.Analysis.QualityPerEvaluationsAnalyzer.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Parameters.OptionalValueParameter`1..ctor(OptionalValueParameter`1 original, Cloner cloner)
   at HeuristicLab.Parameters.OptionalValueParameter`1.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Core.KeyedItemCollection`2..ctor(KeyedItemCollection`2 original, Cloner cloner)
   at HeuristicLab.Core.ParameterCollection.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Operators.Operator..ctor(Operator original, Cloner cloner)
   at HeuristicLab.Analysis.MultiAnalyzer.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Parameters.OptionalValueParameter`1..ctor(OptionalValueParameter`1 original, Cloner cloner)
   at HeuristicLab.Parameters.ValueParameter`1.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Core.KeyedItemCollection`2..ctor(KeyedItemCollection`2 original, Cloner cloner)
   at HeuristicLab.Core.ParameterCollection.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Optimization.Algorithm..ctor(Algorithm original, Cloner cloner)
   at HeuristicLab.Optimization.EngineAlgorithm..ctor(EngineAlgorithm original, Cloner cloner)
   at HeuristicLab.Algorithms.GeneticAlgorithm.GeneticAlgorithm.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Optimization.BatchRun..ctor(BatchRun original, Cloner cloner)
   at HeuristicLab.Optimization.BatchRun.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at HeuristicLab.Core.ItemList`1..ctor(ItemList`1 original, Cloner cloner)
   at HeuristicLab.Optimization.OptimizerList.Clone(Cloner cloner)
   at HeuristicLab.Common.Cloner.Clone[T](T obj)
   at HeuristicLab.Optimization.Experiment..ctor(Experiment original, Cloner cloner)
   at HeuristicLab.Optimization.Experiment.Clone(Cloner cloner)
   at HeuristicLab.Optimizer.MenuItems.CopyToClipboardMenuItem.Execute()
   at HeuristicLab.MainForm.WindowsForms.MainForm.ToolStripItemClicked(Object sender, EventArgs e)

Change History (5)

comment:1 Changed 5 weeks ago by abeham

  • Owner set to abeham
  • Status changed from new to accepted

Something wrong with the results parameter... I will have a look.

comment:2 Changed 5 weeks ago by abeham

I can't reproduce the issue using the stable build.

I loaded the experiment that you provided and copied it to clipboard. I created a new GA with the analyzer, ran, paused, stored, restored, copied it to clipboard.

comment:3 Changed 5 weeks ago by gkronber

Thanks for investigating this. I'll try to reproduce the problem.

comment:4 Changed 9 days ago by abeham

  • Version 3.3.15 deleted

comment:5 Changed 4 days ago by gkronber

  • Owner changed from abeham to gkronber
  • Status changed from accepted to assigned
Note: See TracTickets for help on using tickets.