public interface LoadBalancedFlowFileQueue extends FlowFileQueue
| Modifier and Type | Method and Description |
|---|---|
void |
distributeToPartitions(Collection<FlowFileRecord> flowFiles)
Distributes the given FlowFiles to the appropriate partitions.
|
void |
handleExpiredRecords(Collection<FlowFileRecord> flowFiles)
Handles updating the repositories for the given FlowFiles, which have been expired
|
boolean |
isLocalPartitionFull()
Determines whether or not the local partition's size >= backpressure threshold
|
boolean |
isPropagateBackpressureAcrossNodes()
There are times when we want to ensure that if a node in the cluster reaches the point where backpressure is engaged, that we
honor that backpressure and do not attempt to load balance from a different node in the cluster to that node.
|
void |
onAbort(Collection<FlowFileRecord> flowFiles)
Notifies the queue the a transaction containing the given FlowFiles was aborted
|
void |
onTransfer(Collection<FlowFileRecord> flowFiles)
Notifies the queue that the given FlowFiles have been successfully transferred to another node
|
void |
receiveFromPeer(Collection<FlowFileRecord> flowFiles)
Adds the given FlowFiles to this queue, as they have been received from another node in the cluster
|
acknowledge, acknowledge, cancelDropFlowFileRequest, cancelListFlowFileRequest, dropFlowFiles, getBackPressureDataSizeThreshold, getBackPressureObjectThreshold, getDropFlowFileStatus, getFlowFile, getFlowFileAvailability, getFlowFileExpiration, getFlowFileExpiration, getIdentifier, getListFlowFileStatus, getLoadBalanceCompression, getLoadBalanceStrategy, getMinLastQueueDate, getPartitioningAttribute, getPriorities, getQueueDiagnostics, getTotalQueuedDuration, isActivelyLoadBalancing, isActiveQueueEmpty, isEmpty, isFull, isUnacknowledgedFlowFile, listFlowFiles, lock, offloadQueue, poll, poll, poll, poll, poll, poll, purgeSwapFiles, put, putAll, recoverSwappedFlowFiles, resetOffloadedQueue, setBackPressureDataSizeThreshold, setBackPressureObjectThreshold, setFlowFileExpiration, setLoadBalanceCompression, setLoadBalanceStrategy, setPriorities, size, startLoadBalancing, stopLoadBalancing, unlock, verifyCanListvoid receiveFromPeer(Collection<FlowFileRecord> flowFiles) throws IllegalClusterStateException
flowFiles - the FlowFiles received from the peerIllegalClusterStateException - if the node is not currently in a state in which it can receive data from other nodesvoid distributeToPartitions(Collection<FlowFileRecord> flowFiles)
FlowFileQueue.putAll(Collection) method,
this does not alter the size of the FlowFile Queue itself, as it is intended only to place the FlowFiles into
their appropriate partitionsflowFiles - the FlowFiles to distributevoid onTransfer(Collection<FlowFileRecord> flowFiles)
flowFiles - the FlowFiles that were transferredvoid onAbort(Collection<FlowFileRecord> flowFiles)
flowFiles - the FlowFiles in the transactionvoid handleExpiredRecords(Collection<FlowFileRecord> flowFiles)
flowFiles - the expired FlowFilesboolean isPropagateBackpressureAcrossNodes()
true if backpressure on Node A should prevent Node B from sending to it, false if Node B should send to Node A
even when backpressure is engaged on Node A.boolean isLocalPartitionFull()
true if the number of FlowFiles or total size of FlowFiles in the local partition alone meets or exceeds the backpressure threshold, false otherwise.Copyright © 2023 Apache NiFi Project. All rights reserved.