Package org.apache.flink.runtime.query
Class KvStateRegistry
- java.lang.Object
-
- org.apache.flink.runtime.query.KvStateRegistry
-
public class KvStateRegistry extends Object
A registry forInternalKvStateinstances per task manager.This is currently only used for KvState queries: KvState instances, which are marked as queryable in their state descriptor are registered here and can be queried by the
KvStateServer.KvState is registered when it is created/restored and unregistered when the owning operator stops running.
-
-
Constructor Summary
Constructors Constructor Description KvStateRegistry()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TaskKvStateRegistrycreateTaskRegistry(org.apache.flink.api.common.JobID jobId, JobVertexID jobVertexId)Creates aTaskKvStateRegistryfacade for theTaskidentified by the given JobID and JobVertexID instance.KvStateEntry<?,?,?>getKvState(org.apache.flink.queryablestate.KvStateID kvStateId)Returns theKvStateEntrycontaining the requested instance as identified by the given KvStateID, along with itsKvStateInfoornullif none is registered.org.apache.flink.queryablestate.KvStateIDregisterKvState(org.apache.flink.api.common.JobID jobId, JobVertexID jobVertexId, KeyGroupRange keyGroupRange, String registrationName, InternalKvState<?,?,?> kvState, ClassLoader userClassLoader)Registers the KvState instance and returns the assigned ID.voidregisterListener(org.apache.flink.api.common.JobID jobId, KvStateRegistryListener listener)Registers a listener with the registry.voidunregisterKvState(org.apache.flink.api.common.JobID jobId, JobVertexID jobVertexId, KeyGroupRange keyGroupRange, String registrationName, org.apache.flink.queryablestate.KvStateID kvStateId)Unregisters the KvState instance identified by the given KvStateID.voidunregisterListener(org.apache.flink.api.common.JobID jobId)Unregisters the listener with the registry.
-
-
-
Method Detail
-
registerListener
public void registerListener(org.apache.flink.api.common.JobID jobId, KvStateRegistryListener listener)Registers a listener with the registry.- Parameters:
jobId- identifying the job for which to register aKvStateRegistryListenerlistener- The registry listener.- Throws:
IllegalStateException- If there is a registered listener
-
unregisterListener
public void unregisterListener(org.apache.flink.api.common.JobID jobId)
Unregisters the listener with the registry.- Parameters:
jobId- for which to unregister theKvStateRegistryListener
-
registerKvState
public org.apache.flink.queryablestate.KvStateID registerKvState(org.apache.flink.api.common.JobID jobId, JobVertexID jobVertexId, KeyGroupRange keyGroupRange, String registrationName, InternalKvState<?,?,?> kvState, ClassLoader userClassLoader)Registers the KvState instance and returns the assigned ID.- Parameters:
jobId- JobId the KvState instance belongs tojobVertexId- JobVertexID the KvState instance belongs tokeyGroupRange- Key group range the KvState instance belongs toregistrationName- Name under which the KvState is registeredkvState- KvState instance to be registered- Returns:
- Assigned KvStateID
-
unregisterKvState
public void unregisterKvState(org.apache.flink.api.common.JobID jobId, JobVertexID jobVertexId, KeyGroupRange keyGroupRange, String registrationName, org.apache.flink.queryablestate.KvStateID kvStateId)Unregisters the KvState instance identified by the given KvStateID.- Parameters:
jobId- JobId the KvState instance belongs tokvStateId- KvStateID to identify the KvState instancekeyGroupRange- Key group range the KvState instance belongs to
-
getKvState
public KvStateEntry<?,?,?> getKvState(org.apache.flink.queryablestate.KvStateID kvStateId)
Returns theKvStateEntrycontaining the requested instance as identified by the given KvStateID, along with itsKvStateInfoornullif none is registered.- Parameters:
kvStateId- KvStateID to identify the KvState instance- Returns:
- The
KvStateEntryinstance identified by the KvStateID ornullif there is none
-
createTaskRegistry
public TaskKvStateRegistry createTaskRegistry(org.apache.flink.api.common.JobID jobId, JobVertexID jobVertexId)
Creates aTaskKvStateRegistryfacade for theTaskidentified by the given JobID and JobVertexID instance.- Parameters:
jobId- JobID of the taskjobVertexId- JobVertexID of the task- Returns:
- A
TaskKvStateRegistryfacade for the task
-
-