Interface XidGenerator
-
- All Superinterfaces:
AutoCloseable,Serializable
@Internal public interface XidGenerator extends Serializable, AutoCloseable
Xidgenerator.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description booleanbelongsToSubtask(Xid xid, org.apache.flink.api.common.functions.RuntimeContext ctx)default voidclose()XidgenerateXid(org.apache.flink.api.common.functions.RuntimeContext runtimeContext, long checkpointId)Generate newXid.default voidopen()static XidGeneratorsemanticXidGenerator()Creates aXidGeneratorthat generatesxidsfrom: job id subtask index checkpoint id four random bytes generated usingSecureRandom)
-
-
-
Method Detail
-
generateXid
Xid generateXid(org.apache.flink.api.common.functions.RuntimeContext runtimeContext, long checkpointId)
Generate newXid. Requirements for generated Xids:- Parameters:
runtimeContext- can be used for example to derive global transaction idcheckpointId- can be used for example to derive global transaction id
-
open
default void open()
-
belongsToSubtask
boolean belongsToSubtask(Xid xid, org.apache.flink.api.common.functions.RuntimeContext ctx)
- Returns:
- true if the provided transaction belongs to this subtask
-
close
default void close()
- Specified by:
closein interfaceAutoCloseable
-
semanticXidGenerator
static XidGenerator semanticXidGenerator()
Creates aXidGeneratorthat generatesxidsfrom:- job id
- subtask index
- checkpoint id
- four random bytes generated using
SecureRandom)
Each created
XidGeneratorinstance MUST be used for only one Sink instance (otherwise Xids could collide).
-
-