Khi một batch job Dataflow khởi chạy thành công, bắt đầu xử lý các bản ghi và sau đó bị lỗi giữa chừng tại một DoFn cụ thể:
- Ngoại lệ trong mã nguồn worker (Lựa chọn B): Đây là nguyên nhân phổ biến nhất. Lỗi này xảy ra khi mã xử lý tùy chỉnh của bạn bên trong phương thức
processElement của DoFn gặp lỗi logic thời gian chạy (runtime exception) khi gặp một bản ghi dữ liệu cụ thể (ví dụ: lỗi chia cho 0, lỗi ép kiểu, hoặc lỗi giá trị null).
- Tại sao các lựa chọn khác sai:
- A (Job validation) và C (Graph or pipeline construction): Các lỗi này liên quan đến cấu trúc đồ thị và tham số đầu vào của pipeline. Chúng sẽ khiến job thất bại ngay lập tức khi bạn gửi lên (submit) và job sẽ không thể bắt đầu hoặc xử lý bất kỳ phần tử nào.
- D (Insufficient permissions): Lỗi phân quyền thường xảy ra khi Dataflow cố gắng khởi tạo tài nguyên, đọc dữ liệu từ nguồn hoặc ghi dữ liệu xuống đích. Nó thường ngăn cản pipeline chạy ngay từ bước đầu tiên chứ không chạy được vài phần tử rồi mới lỗi.
(Đáp án được gợi ý bởi AI)