anchor.diff:          , start_link/1
           ]).
   
  --export([select/5, column_names/1, fetch_start/6]).
  +-export([select/4, column_names/1, fetch_start/5]).
   
   start_link(Params) ->
       ?Info("~p starting...~n", [?MODULE]),
  
positive.code: 
  column_names({CsvSchema,FileName}) ->
      UnquotedFN = imem_datatype:strip_dquotes(FileName),
      case select({CsvSchema,UnquotedFN}, [], 200, 100, read) of
          '$end_of_table' ->  [<<"col1">>];
           {Rows, _} ->       first_longest_line(Rows,[])
      end.
  
negative.code:                         end, 0, RemovedRows),
                      FinalPos = NewPos - (2 * length(RemovedRows)) - RemovedDataSize,
                      {lists:sublist(NewRows, RowCount), create_file_handler(Io, FinalPos, BlockSize, RowCount)};
                  true -> {NewRows, create_file_handler(Io, NewPos, BlockSize, RowCount)}
              end;
          eof -> file:close(Io),{Rows, {'$end_of_table'}};
          {_, einval} -> file:close(Io), ?LogDebug("Error reading the file"), {aborted, einval}
      end.
  
  create_file_handler(Io, Pos, BlockSize, RowCount) ->
      file:close(Io),
      #{io => Io, pos => Pos, blockSize => BlockSize, rowCount => RowCount}.
  