apache / apache/beam

java DataflowRunner should warn if the stagingLocation has a TTL

Open
#18,209 0 comments 0 reactions 0 assignees View on GitHub
dataflow good first issue improvement P3 runners
Dominant language
Java
Stars
8.7k
Forks
4.7k
Avg merge
1d 20h
Merged PRs (30d)
196

Description

We have seen a few customers run into a hard-to-track-down bug where the staging bucket has a TTL, but files get TTL-deleted when they are still needed.

This might be because of:

1. Long lived batch jobs / streaming jobs can reference staged files arbitrarily later and will fail in bad ways if they have been deleted.
2. Some customers even hit issues where the "check file already exists" succeeds when starting a job, but then the file is TTL-deleted before the job actually starts. (This sounds crazy, but may happen if TTL is 7 days and jobs run every 7 days, for example. Race condition.)

I'm hoping it's not hard to check that files would have TTLs and warn if so.

Imported from Jira [BEAM-1507](https://issues.apache.org/jira/browse/BEAM-1507). Original Jira may contain additional context.
Reported by: dhalperi.

Contributor guide

Open the contributing guide

Research direction

Start in the Java DataflowRunner entry point that handles stagingLocation and trace how the staging bucket is inspected before a job starts. Determine whether a bucket TTL can be detected and identify the existing warning path. Done means users are warned when staged files may expire before they are needed, with coverage for the relevant staging behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
cloud
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.