public boolean hasNonPartitionedState() { for (OperatorSubtaskState sts : operatorSubtaskStates.values()) { if (sts != null && sts.getLegacyOperatorState() != null) { return true; } } return false; }
private void reAssignSubNonPartitionedStates( OperatorState operatorState, int subTaskIndex, int newParallelism, int oldParallelism, List<StreamStateHandle> subNonPartitionableState) { if (oldParallelism == newParallelism) { if (operatorState.getState(subTaskIndex) != null) { subNonPartitionableState.add(operatorState.getState(subTaskIndex).getLegacyOperatorState()); } else { subNonPartitionableState.add(null); } } else { subNonPartitionableState.add(null); } }
private static void serializeSubtaskState(OperatorSubtaskState subtaskState, DataOutputStream dos) throws IOException { dos.writeLong(-1); StreamStateHandle nonPartitionableState = subtaskState.getLegacyOperatorState(); int len = nonPartitionableState != null ? 1 : 0; dos.writeInt(len); if (len == 1) { serializeStreamStateHandle(nonPartitionableState, dos); } OperatorStateHandle operatorStateBackend = subtaskState.getManagedOperatorState(); len = operatorStateBackend != null ? 1 : 0; dos.writeInt(len); if (len == 1) { serializeOperatorStateHandle(operatorStateBackend, dos); } OperatorStateHandle operatorStateFromStream = subtaskState.getRawOperatorState(); len = operatorStateFromStream != null ? 1 : 0; dos.writeInt(len); if (len == 1) { serializeOperatorStateHandle(operatorStateFromStream, dos); } KeyedStateHandle keyedStateBackend = subtaskState.getManagedKeyedState(); serializeKeyedStateHandle(keyedStateBackend, dos); KeyedStateHandle keyedStateStream = subtaskState.getRawKeyedState(); serializeKeyedStateHandle(keyedStateStream, dos); }