docs: private void finalizePromotion() {
          NodeEngine nodeEngine = getNodeEngine();
          InternalPartitionServiceImpl partitionService = getService();
          OperationService operationService = nodeEngine.getOperationService();
  
          partitionState.setMaster(getCallerAddress());
          success = partitionService.processPartitionRuntimeState(partitionState);
  
          ILogger logger = getLogger();
          if (!success) {
              logger.severe("Promotion of " + promotions.size() + " partitions failed. "
                      + ". Promotion partition state version: " + partitionState.getVersion()
                      + ", current partition state version: " + partitionService.getPartitionStateVersion());
          }
          if (logger.isFineEnabled()) {
              logger.fine("Submitting FinalizePromotionOperations for " + promotions.size() + " promotions. Result: " + success
                      + ". Promotion partition state version: " + partitionState.getVersion()
                      + ", current partition state version: " + partitionService.getPartitionStateVersion());
          }
          for (MigrationInfo promotion : promotions) {
              if (logger.isFinestEnabled()) {
                  logger.finest("Submitting FinalizePromotionOperation for promotion: " + promotion + ". Result: " + success);
              }
              FinalizePromotionOperation op = new FinalizePromotionOperation(promotion, success);
              op.setPartitionId(promotion.getPartitionId()).setNodeEngine(nodeEngine).setService(partitionService);
              operationService.execute(op);
          }
          partitionService.getInternalMigrationListener()
                  .onPromotionComplete(MigrationParticipant.DESTINATION, promotions, success);
          partitionService.getMigrationManager().releasePromotionPermit();
      }