Pooled artifact source
- Dominant language
- Java
- Stars
- 8.7k
- Forks
- 4.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 196
Description
Because DistributeCache lifetimes are tied to operator lifetimes in Flink, we need a way to wrap operator-scoped artifact sources. Artifacts are inherently job-scoped and should be the same throughout a job's lifetime. For this reason, it is safe to pool artifact sources and serve artifacts from an arbitrary pooled source as long as the underlying source is still in scope.
We need a pooled source in order to satisfy the bundle factory interfaces. Using the job-scoped and stage-scoped bundle factories allows us to cache and reuse different components that serve SDK harnesses. Because the distributed cache lifetimes are specific to Flink, the pooled artifact source should probably live in a runner-specific directory.
Imported from Jira [BEAM-4286](https://issues.apache.org/jira/browse/BEAM-4286). Original Jira may contain additional context.
Reported by: bsidhom.
Contributor guide
Assessment
This issue has not been assessed yet.