Buggy code:
public class ChromatogramToFeatureTableMethod implements MSDKMethod < FeatureTable > { @ Nonnull private final List < Chromatogram > chromatograms ; @ Nonnull private final FeatureTable featureTable ; @ Nonnull private final Sample sample ; private final Map < ColumnName , FeatureTableColumn < ? > > tableColumns = new java . util . EnumMap ( ColumnName . class ) ; private boolean canceled = false ; private int processedChromatograms = 0 ; private int totalChromatograms = 0 ; public ChromatogramToFeatureTableMethod ( @ Nonnull List < Chromatogram > chromatograms , @ Nonnull FeatureTable featureTable , @ Nonnull Sample sample ) { } @ SuppressWarnings ( "unchecked" ) @ Override public FeatureTable execute ( ) throws MSDKException { totalChromatograms = chromatograms . size ( ) ; addColumns ( featureTable ) ; if ( canceled ) return null ; int lastID = 0 ; List < FeatureTableRow > rows = featureTable . getRows ( ) ; if ( ! ( rows . isEmpty ( ) ) ) { lastID = featureTable . getRows ( ) . get ( featureTable . getRows ( ) . size ( ) ) . getId ( ) ; } FeatureTableColumn column ; for ( Chromatogram chromatogram : chromatograms ) { lastID ++ ; FeatureTableRow newRow = MSDKObjectBuilder . getFeatureTableRow ( featureTable , lastID ) ; column = featureTable . getColumn ( ID , null ) ; newRow . setData ( column , lastID ) ; column = featureTable . getColumn ( "Ion<seq2seq4repair_space>Annotation" , null , IonAnnotation . class ) ; newRow . setData ( column , chromatogram . getIonAnnotation ( ) ) ; column = tableColumns . get ( CHROMATOGRAM ) ; newRow . setData ( column , chromatogram ) ; double mz = chromatogram . getMz ( ) ; column = tableColumns . get ( MZ ) ; newRow . setData ( column , mz ) ; float rt = ChromatogramUtil . getRt ( chromatogram ) ; ChromatographyInfo chromatographyInfo = MSDKObjectBuilder . getChromatographyInfo1D ( UNKNOWN , rt ) ; column = tableColumns . get ( RT ) ; <START_BUG> newRow . setData ( column , ( ( double ) ( rt ) ) ) ; <END_BUG> double rtStart = ChromatogramUtil . getRtStart ( chromatogram ) ; column = tableColumns . get ( RTSTART ) ; newRow . setData ( column , rtStart ) ; double rtEnd = ChromatogramUtil . getRtEnd ( chromatogram ) ; column = tableColumns . get ( RTEND ) ; newRow . setData ( column , rtEnd ) ; double duration = ChromatogramUtil . getDuration ( chromatogram ) ; column = tableColumns . get ( DURATION ) ; newRow . setData ( column , duration ) ; double area = ChromatogramUtil . getArea ( chromatogram ) ; column = tableColumns . get ( AREA ) ; newRow . setData ( column , area ) ; double height = ChromatogramUtil . getMaxHeight ( chromatogram ) ; column = tableColumns . get ( HEIGHT ) ; newRow . setData ( column , height ) ; int datapoints = ChromatogramUtil . getNumberOfDataPoints ( chromatogram ) ; column = tableColumns . get ( NUMBEROFDATAPOINTS ) ; newRow . setData ( column , datapoints ) ; Double fwhm = ChromatogramUtil . getFwhm ( chromatogram ) ; if ( fwhm != null ) { column = tableColumns . get ( FWHM ) ; newRow . setData ( column , fwhm ) ; } Double tailingFactor = ChromatogramUtil . getTailingFactor ( chromatogram ) ; if ( tailingFactor != null ) { column = tableColumns . get ( TAILINGFACTOR ) ; newRow . setData ( column , tailingFactor ) ; } Double asymmetryFactor = ChromatogramUtil . getAsymmetryFactor ( chromatogram ) ; if ( asymmetryFactor != null ) { column = tableColumns . get ( ASYMMETRYFACTOR ) ; newRow . setData ( column , asymmetryFactor ) ; } featureTable . addRow ( newRow ) ; ( processedChromatograms ) ++ ; if ( canceled ) return null ; } FeatureTableUtil . recalculateAverages ( featureTable ) ; return featureTable ; } private void addColumns ( @ Nonnull FeatureTable featureTable ) { } @ Override @ Nullable public Float getFinishedPercentage ( ) { } @ Override @ Nullable public FeatureTable getResult ( ) { } @ Override public void cancel ( ) { } }

Fix:
newRow . setData ( column , chromatographyInfo ) ;