The GitHub Actions job "Backport Auto Label" on 
texera.git/fix/6978-bigint-size-columns has succeeded.
Run started by GitHub user mengw15 (triggered by mengw15).

Head commit for run:
927ade9de1683ab5593ddeb054e6e2a50aa4114f / mengw15 
<[email protected]>
fix(amber): store execution sizes as BIGINT to stop silent >2GiB truncation

updateResultSize / updateRuntimeStatsSize / updateConsoleMessageSize stored
Long byte counts into INT columns via Integer.valueOf(size.toInt). Scala's
Long.toInt keeps only the low 32 bits without raising, so a size >= 2 GiB
wrapped -- values in [2 GiB, 4 GiB) became negative -- and UserQuotaResource,
which sums result_size / runtime_stats_size / console_messages_size into a
user's storage quota, reported corrupted totals. With BigObject (#4067)
supporting >2 GB results, such sizes are reachable in practice.

Widen the three columns to BIGINT (texera_ddl.sql + sql/updates/29.sql,
changelog changeSet 29) and store the Long directly, dropping the .toInt
narrowing. Adapt the quota reads, whose getOrElse(0).asInstanceOf[Integer]
pattern would otherwise throw ClassCastException on the now-Long fields.

Add a regression case to WorkflowExecutionsResourceSpec storing a 3 GiB
size and asserting it round-trips untruncated; before the fix it failed
with "-1073741824 did not equal 3221225472".

Closes #6978.

Report URL: https://github.com/apache/texera/actions/runs/30408405236

With regards,
GitHub Actions via GitBox

Reply via email to