Detecting data boundaries leads to OutOfMemoryError when tab is not the file delimiter

Issue #517 resolved
Christopher Keil repo owner created an issue

USE CASE: WHAT DO YOU WANT TO DO?

Load a non-tab-delimited file without problems.

STEPS TO REPRODUCE AN ISSUE (OR TRIGGER A NEW FEATURE)

  1. Click Open or Import (the problem is with the import dialog functionality)
  2. Choose any file, preferably a large CSV-file such as Rob's https://bitbucket.org/TreeView3Dev/treeview3/downloads/test_14000x7.csv
  3. Wait until OutOfMemory error appears in console

CURRENT BEHAVIOR

Detecting label boundaries for non-tab-delimited files easily leads to OutOfMemory errors in the code which is responsible for rendering the preview table's label cells, likely because very large, incorrect boundaries are set by detectBoundaries().

EXPECTED BEHAVIOR

Labels for non-tab-delimited files are detected without issues

DEVELOPERS ONLY SECTION

SUGGESTED CHANGE (Pseudocode optional)

Debug, but if correct procedure leads to issues, for example when the delimiter splits the row into many non-numerical values, define a maximum number of label columns allowed.

FILES AFFECTED (where the changes will be implemented) - developers only

DataImportController.java, PreviewDataTable.java

LEVEL OF EFFORT - developers only

medium

COMMENTS

This issue is a blocker for #489!

Comments (3)

  1. Log in to comment