Hey Aleksandr, Thanks for driving this — exposing JobInfo to the source context makes sense, and it's already there on the sink side[1].
A few questions: 1. On the "no stability contract" argument for RichSourceReaderContext: Per FLIP-321[2], an @Experimental API should be promoted after two releases. RichSourceReaderContext is well past that, so its @Experimental tag is a stalled promotion, not a genuine lack of stability contract. The real gaps are that it only exists on the reader side, and that access goes through the whole RuntimeContext. Worth reframing the motivation around those instead. 2. On the use cases: Is any of them a real connector today that's actually working around this? And is there any follow-up JIRA on the connector side to adopt the new interface? Best, Rui [1] https://github.com/apache/flink/blob/a5a7925415bdf6f257b100cc27e9aeb19d096d04/flink-core/src/main/java/org/apache/flink/api/connector/sink2/InitContext.java#L52 [2] https://cwiki.apache.org/confluence/display/FLINK/FLIP-321:+Introduce+an+API+deprecation+process On Tue, Jun 2, 2026 at 4:55 PM Yuepeng Pan <[email protected]> wrote: > Hi Aleksandr Savonin, > > +1. That sounds reasonable to me. > > > Best, > Yuepeng Pan > > Aleksandr Savonin <[email protected]> 于2026年6月2日周二 22:21写道: > > > Hi everyone, > > gently pinging this thread to see if anyone has thoughts or concerns > > regarding this proposal. > > > > On Wed, 27 May 2026 at 15:57, Aleksandr Savonin <[email protected]> > > wrote: > > > > > > Hi everyone, > > > > > > I’d like to start a discussion about FLIP-583: Expose JobInfo on > > > Source contexts [1]. > > > Source connectors often need job metadata (job ID, job name) for > > > authentication, distributed tracing, metrics labeling, and other > > > usages. SinkV2 already exposes this via `InitContext.getJobInfo()`. > > > > > > The current workarounds on the source side (e.g. parsing the job ID > > > from metric group variables) are brittle/fragile and undiscoverable. > > > The FLIP adds a `@PublicEvolving` default method `getJobInfo()` to > > > `SourceReaderContext` and `SplitEnumeratorContext`, following the same > > > pattern as already established in these interfaces. The runtime > > > implementations delegate to `StreamingRuntimeContext` (reader side) > > > and `OperatorCoordinator.Context` (enumerator side). > > > > > > Looking forward to your feedback. > > > > > > [1] > > > https://cwiki.apache.org/confluence/display/FLINK/FLIP-583%3A+Expose+JobInfo+on+Source+contexts > > > > > > -- > > > Kind regards, > > > Aleksandr > > > > > > > > -- > > Kind regards, > > Aleksandr > > >
