The GitHub Actions job "Required Checks" on texera.git/fix/7550-csv-blank-cell-type has failed. Run started by GitHub user Yicong-Huang (triggered by Yicong-Huang).
Head commit for run: 2b08597de476ea4a50aa7254aa232a492a4cd61a / kary zheng <[email protected]> fix(csv-scan): keep a numeric column's type when one of its cells is blank Schema inference and execution disagreed about what a blank cell is, and the schema side was the one that lost information. Inference set nullValue("") on its parser, so a blank read as an empty string: tryParseDouble("") fails, tryParseBoolean("") fails, and inferField lands on tryParseString(). One empty cell was enough to type a whole numeric column as STRING. Execution builds its parser without nullValue, so the same blank read as null there, which is what AttributeTypeUtils.parseField is written to pass through. The effect reaches well past the scan. Every downstream operator that does arithmetic on such a column then receives strings and fails on rows whose values are perfectly good numbers, not on the blank one. Hugging Face Iris Logistic Regression on a three-row file fails at the first row, where numpy is handed array([['2.6', '0.75']], dtype='<U32'). Dropping the setting leaves both sides reading a blank as null, and tryParseDouble(null) already answers DOUBLE, so the column keeps the type its values give it. One corner changes with it: a column that is blank in every sampled row now infers as INTEGER rather than STRING. Its values are null either way, so this renames the empty rather than reinterpreting anything. CSVScanSourceOpDescSpec gains the case; it fails on the previous behavior. The module's 2187 tests pass. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> Report URL: https://github.com/apache/texera/actions/runs/31534515447 With regards, GitHub Actions via GitBox
