Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • JdbcOutputFormat relies on isObjectReuseEnabled/ExecutionConfig in RuntimeContext, this is because the jdbc sink needs to decide whether to buffer the copies or the original records based on isObjectReuseEnabled. When the object reuse is enabled, we should buffer the copies(because the content of the objects may be changed before flush), otherwise we should buffer the original record.
  • XidGenerator relies on RuntimeContext. The SemanticXidGenerator (the only implementation?) uses getJobId/RuntimeContext and getIndexOfThisSubtask/RuntimeContext, this is because we need to create a Xid based on job and subtask.


Code Block
languagejava
titleSinkV2#InitContext
collapsetrue
@PublicEvolving
public interface Sink<InputT> extends Serializable {
	... current methods

    @PublicEvolving
    public interface InitContext {
        ... current methods
	    ExecutionConfig getExecutionConfig();
	 	JobID getJobId();
		int getIndexOfThisSubtask():
    }
}

New JDBC Source

DataStream Source

...