Skip to content

Commit 08b0fbc

Browse files
Grain Teamcopybara-github
authored andcommitted
Add traceback to exceptions raised in prefetch worker.
PiperOrigin-RevId: 887969962
1 parent 387d3ef commit 08b0fbc

1 file changed

Lines changed: 4 additions & 0 deletions

File tree

grain/_src/python/dataset/transformations/process_prefetch.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
from multiprocessing import util
2424
import queue
2525
import time
26+
import traceback
2627
from typing import Any, TypeVar
2728
import weakref
2829

@@ -238,6 +239,7 @@ def _put_dataset_elements_in_buffer(
238239
try:
239240
element = it.__next__()
240241
except Exception as e: # pylint: disable=broad-except
242+
e.add_note("\n".join(traceback.format_exception(e)))
241243
grain_queue.add_element_to_queue( # pytype: disable=wrong-arg-types
242244
(None, None, None, e), buffer, should_stop.is_set
243245
)
@@ -262,6 +264,8 @@ def _put_dataset_elements_in_buffer(
262264
except Exception as e: # pylint: disable=broad-except
263265
_clear_queue_and_maybe_unlink_shm(buffer)
264266
_clear_queue_and_maybe_unlink_shm(set_state_queue)
267+
e.add_note("\n".join(traceback.format_exception(e)))
268+
265269
grain_queue.add_element_to_queue( # pytype: disable=wrong-arg-types
266270
(None, None, None, e), buffer, should_stop.is_set
267271
)

0 commit comments

Comments
 (0)