Class StreamConfig

    • Constructor Detail

      • StreamConfig

        public StreamConfig​(org.apache.flink.configuration.Configuration config)
    • Method Detail

      • getConfiguration

        public org.apache.flink.configuration.Configuration getConfiguration()
      • triggerSerializationAndReturnFuture

        public CompletableFuture<StreamConfig> triggerSerializationAndReturnFuture​(Executor ioExecutor)
        Trigger the object config serialization and return the completable future.
      • serializeAllConfigs

        public void serializeAllConfigs()
        Serialize all object configs synchronously. Only used for operators which need to reconstruct the StreamConfig internally or test.
      • setAndSerializeTransitiveChainedTaskConfigs

        @VisibleForTesting
        public void setAndSerializeTransitiveChainedTaskConfigs​(Map<Integer,​StreamConfig> chainedTaskConfigs)
      • setVertexID

        public void setVertexID​(Integer vertexID)
      • getVertexID

        public Integer getVertexID()
      • setManagedMemoryFractionOperatorOfUseCase

        public void setManagedMemoryFractionOperatorOfUseCase​(org.apache.flink.core.memory.ManagedMemoryUseCase managedMemoryUseCase,
                                                              double fraction)
        Fraction of managed memory reserved for the given use case that this operator should use.
      • getManagedMemoryFractionOperatorUseCaseOfSlot

        public double getManagedMemoryFractionOperatorUseCaseOfSlot​(org.apache.flink.core.memory.ManagedMemoryUseCase managedMemoryUseCase,
                                                                    org.apache.flink.configuration.Configuration jobConfig,
                                                                    org.apache.flink.configuration.Configuration taskManagerConfig,
                                                                    ClassLoader cl)
        Fraction of total managed memory in the slot that this operator should use for the given use case.
      • setTypeSerializerOut

        public void setTypeSerializerOut​(org.apache.flink.api.common.typeutils.TypeSerializer<?> serializer)
      • getTypeSerializerOut

        public <T> org.apache.flink.api.common.typeutils.TypeSerializer<T> getTypeSerializerOut​(ClassLoader cl)
      • setTypeSerializerSideOut

        public void setTypeSerializerSideOut​(org.apache.flink.util.OutputTag<?> outputTag,
                                             org.apache.flink.api.common.typeutils.TypeSerializer<?> serializer)
      • getTypeSerializerSideOut

        public <T> org.apache.flink.api.common.typeutils.TypeSerializer<T> getTypeSerializerSideOut​(org.apache.flink.util.OutputTag<?> outputTag,
                                                                                                    ClassLoader cl)
      • setWatermarkDeclarations

        public void setWatermarkDeclarations​(byte[] serializedWatermarkDeclarations)
      • setupNetworkInputs

        public void setupNetworkInputs​(org.apache.flink.api.common.typeutils.TypeSerializer<?>... serializers)
      • getTypeSerializerIn1

        @Deprecated
        public <T> org.apache.flink.api.common.typeutils.TypeSerializer<T> getTypeSerializerIn1​(ClassLoader cl)
        Deprecated.
      • getTypeSerializerIn2

        @Deprecated
        public <T> org.apache.flink.api.common.typeutils.TypeSerializer<T> getTypeSerializerIn2​(ClassLoader cl)
        Deprecated.
      • getTypeSerializerIn

        public <T> org.apache.flink.api.common.typeutils.TypeSerializer<T> getTypeSerializerIn​(int index,
                                                                                               ClassLoader cl)
      • setStreamOperator

        @VisibleForTesting
        public void setStreamOperator​(StreamOperator<?> operator)
      • setIterationId

        public void setIterationId​(String iterationId)
      • getIterationId

        public String getIterationId()
      • setIterationWaitTime

        public void setIterationWaitTime​(long time)
      • getIterationWaitTime

        public long getIterationWaitTime()
      • setNumberOfNetworkInputs

        public void setNumberOfNetworkInputs​(int numberOfInputs)
      • getNumberOfNetworkInputs

        public int getNumberOfNetworkInputs()
      • setNumberOfOutputs

        public void setNumberOfOutputs​(int numberOfOutputs)
      • getNumberOfOutputs

        public int getNumberOfOutputs()
      • setOperatorNonChainedOutputs

        public void setOperatorNonChainedOutputs​(List<NonChainedOutput> nonChainedOutputs)
        Sets the operator level non-chained outputs.
      • setChainedOutputs

        public void setChainedOutputs​(List<StreamEdge> chainedOutputs)
      • setInPhysicalEdges

        public void setInPhysicalEdges​(List<StreamEdge> inEdges)
      • setCheckpointingEnabled

        public void setCheckpointingEnabled​(boolean enabled)
      • isCheckpointingEnabled

        public boolean isCheckpointingEnabled()
      • setCheckpointMode

        public void setCheckpointMode​(org.apache.flink.core.execution.CheckpointingMode mode)
      • getCheckpointMode

        public org.apache.flink.core.execution.CheckpointingMode getCheckpointMode()
      • setUnalignedCheckpointsEnabled

        public void setUnalignedCheckpointsEnabled​(boolean enabled)
      • isUnalignedCheckpointsEnabled

        public boolean isUnalignedCheckpointsEnabled()
      • setUnalignedCheckpointsSplittableTimersEnabled

        public void setUnalignedCheckpointsSplittableTimersEnabled​(boolean enabled)
      • isUnalignedCheckpointsSplittableTimersEnabled

        public boolean isUnalignedCheckpointsSplittableTimersEnabled()
      • isExactlyOnceCheckpointMode

        public boolean isExactlyOnceCheckpointMode()
      • getAlignedCheckpointTimeout

        public Duration getAlignedCheckpointTimeout()
      • setAlignedCheckpointTimeout

        public void setAlignedCheckpointTimeout​(Duration alignedCheckpointTimeout)
      • setMaxConcurrentCheckpoints

        public void setMaxConcurrentCheckpoints​(int maxConcurrentCheckpoints)
      • getMaxConcurrentCheckpoints

        public int getMaxConcurrentCheckpoints()
      • getMaxSubtasksPerChannelStateFile

        public int getMaxSubtasksPerChannelStateFile()
      • setMaxSubtasksPerChannelStateFile

        public void setMaxSubtasksPerChannelStateFile​(int maxSubtasksPerChannelStateFile)
      • setTransitiveChainedTaskConfigs

        public void setTransitiveChainedTaskConfigs​(Map<Integer,​StreamConfig> chainedTaskConfigs)
      • setOperatorID

        public void setOperatorID​(OperatorID operatorID)
      • getOperatorID

        public OperatorID getOperatorID()
      • setOperatorName

        public void setOperatorName​(String name)
      • getOperatorName

        public String getOperatorName()
      • setChainIndex

        public void setChainIndex​(int index)
      • getChainIndex

        public int getChainIndex()
      • setStateBackend

        public void setStateBackend​(StateBackend backend)
      • setChangelogStateBackendEnabled

        public void setChangelogStateBackendEnabled​(org.apache.flink.util.TernaryBoolean enabled)
      • setStateBackendUsesManagedMemory

        @VisibleForTesting
        public void setStateBackendUsesManagedMemory​(boolean usesManagedMemory)
      • setSerializedStateBackend

        public void setSerializedStateBackend​(org.apache.flink.util.SerializedValue<StateBackend> serializedStateBackend,
                                              boolean useManagedMemory)
      • setSerializedCheckpointStorage

        public void setSerializedCheckpointStorage​(org.apache.flink.util.SerializedValue<CheckpointStorage> serializedCheckpointStorage)
      • isChangelogStateBackendEnabled

        public org.apache.flink.util.TernaryBoolean isChangelogStateBackendEnabled​(ClassLoader cl)
      • setCheckpointStorage

        @VisibleForTesting
        public void setCheckpointStorage​(CheckpointStorage storage)
      • setStatePartitioner

        public void setStatePartitioner​(int input,
                                        org.apache.flink.api.java.functions.KeySelector<?,​?> partitioner)
      • getStatePartitioner

        public <IN,​K extends Serializable> org.apache.flink.api.java.functions.KeySelector<IN,​K> getStatePartitioner​(int input,
                                                                                                                                 ClassLoader cl)
      • setStateKeySerializer

        public void setStateKeySerializer​(org.apache.flink.api.common.typeutils.TypeSerializer<?> serializer)
      • getStateKeySerializer

        public <K> org.apache.flink.api.common.typeutils.TypeSerializer<K> getStateKeySerializer​(ClassLoader cl)
      • setChainStart

        public void setChainStart()
      • isChainStart

        public boolean isChainStart()
      • setChainEnd

        public void setChainEnd()
      • isChainEnd

        public boolean isChainEnd()
      • setGraphContainingLoops

        public void setGraphContainingLoops​(boolean graphContainingLoops)
      • isGraphContainingLoops

        public boolean isGraphContainingLoops()
      • setAttribute

        public void setAttribute​(org.apache.flink.api.common.attribute.Attribute attribute)
      • getAttribute

        public org.apache.flink.api.common.attribute.Attribute getAttribute​(ClassLoader cl)
      • clearInitialConfigs

        public void clearInitialConfigs()
        In general, we don't clear any configuration. However, the SERIALIZED_UDF may be very large when operator includes some large objects, the SERIALIZED_UDF is used to create a StreamOperator and usually only needs to be called once. CHAINED_TASK_CONFIG may be large as well due to the StreamConfig of all non-head operators in OperatorChain will be serialized and stored in CHAINED_TASK_CONFIG. They can be cleared to reduce the memory after StreamTask is initialized. If so, TM will have more memory during running. See FLINK-33315 and FLINK-33317 for more information.