ListCell type error in the new KNIME 2.7 environment.

Hi,

When switching to the new environment (knime2.7) I have a non expected error at runtime with the ListCell type. The message is not clear for me. It tells that my actual collection of StringCell does not comply with its supposed superclass ListCell => 'Runtime class of object <myobject> is ListCell (Collection of: ListCell (Collection of: StringCell)) and does not comply with its supposed superclass ListCell (Collection of: MissingCell)'. Any Idea or changes made in the core since 2.6.

 

Olivier

Hi Olivier,

In which node(s) do you see the problem (which node produces the collection)? There was one bug fix in 2.7 related to this. So I believe the problem is real and the node in question is indeed producing illegal output, which was accepted (but still wrong!) in 2.6. KNIME 2.7 now rejects that type of illegal data.

Thanks,
 Bernd

Hi @wiswedel,

facing the same issue. Coming back to a seven year old ticket as it seems to be the only one I could find.

I have a table with just one row, just happens to be, where a list per column is created by GroupBy “Type based Aggregation” that includes missing.

The quirks in my workflow is that I loop over each column in parallel and the parallel chunk end node snaps.

Execute failed: Runtime class of object "[MY DATA]" (index 0) in row "MY ROW" is List (Collection of: String) and does not comply with its supposed superclass List (Collection of: MissingCell)

Best
Mike

Update: I managed to create a workaround by using the Collection to String node. The Parallel Chunk End node properly collects all results. I then use the string replace to remove ? for missing and the brackets. Via the cell splitter I then recreate the collection.

@Vernalis your awesome Collection to String node is doing a great job. Do you think it’s possible to create a node that does the same but backwards?

Kind regards
Mike

Can you do it using the ‘Cell Splitter’, and set the output to List (or Set)?

Steve

I did exactly that. Though, that comes with a caveat. Missing values are actually transformed into NULL. Maybe that’s a bug since the last row contained correct missing.