code: @SuppressWarnings("checkstyle:npathcomplexity")
      void publishPartitionRuntimeState() {
          if (!partitionStateManager.isInitialized()) {
              // do not send partition state until initialized!
              return;
          }
  
          if (!node.isMaster()) {
              return;
          }
  
          if (!areMigrationTasksAllowed()) {
              // migration is disabled because of a member leave, wait till enabled!
              return;
          }
  
          PartitionRuntimeState partitionState = createPartitionStateInternal();
          if (partitionState == null) {
              return;
          }
  
          if (logger.isFineEnabled()) {
              logger.fine("Publishing partition state, version: " + partitionState.getVersion());
          }
  
          PartitionStateOperation op = new PartitionStateOperation(partitionState, false);
          OperationService operationService = nodeEngine.getOperationService();
          Collection<Member> members = node.clusterService.getMembers();
          for (Member member : members) {
              if (!member.localMember()) {
                  try {
                      operationService.send(op, member.getAddress());
                  } catch (Exception e) {
                      logger.finest(e);
                  }
              }
          }
      }
docs: Called on the master node to publish the current partition state to all cluster nodes. It will not publish the partition
  state if the partitions have not yet been initialized, there is ongoing repartitioning or a node is joining the cluster.