laskoviymishka opened a new pull request, #1279:
URL: https://github.com/apache/iceberg-go/pull/1279

   stream runs in its own goroutine (spawned by newRollingDataWriter) and has 
no caller able to recover a panic. Inside, closeWriter -> FileWriter.Close -> 
stats.ToDataFile panics when NewDataFileBuilder fails, so that panic escaped 
the goroutine and crashed the whole process instead of failing the write.
   
   Add a recover at the top of stream that converts a panic into an error 
delivered on errorCh, mirroring the recover already present in 
equalityDeleteRecordsToDataFiles. The defer is declared after the 
close(r.errorCh) defer so it runs first (LIFO) and sends while errorCh is still 
open; the existing Abort defer still cleans up the half-written file.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to