Program: 49189
Project: 49189
Buggy source:
void processPartitionRuntimeState(PartitionRuntimeState partitionState){
  lock.lock();
  try {
    if (!node.isActive() || !node.joined()) {
      return;
    }
    final Address sender=partitionState.getEndpoint();
    final Address master=node.getMasterAddress();
    if (node.isMaster()) {
      logger.log(Level.WARNING,"String_Node_Str" + sender + "String_Node_Str");
      return;
    }
 else {
      if (sender == null || !sender.equals(master)) {
        if (node.clusterService.getMember(sender) == null) {
          logger.log(Level.SEVERE,"String_Node_Str" + "String_Node_Str" + sender + "String_Node_Str"+ master+ "String_Node_Str");
          return;
        }
 else {
          logger.log(Level.WARNING,"String_Node_Str" + "String_Node_Str" + sender + "String_Node_Str"+ master+ "String_Node_Str"+ "String_Node_Str");
        }
      }
    }
    final Set<Address> unknownAddresses=new HashSet<Address>();
    PartitionView[] newPartitions=partitionState.getPartitions();
    for (    PartitionView newPartition : newPartitions) {
      PartitionImpl currentPartition=partitions[newPartition.getPartitionId()];
      for (int index=0; index < PartitionImpl.MAX_REPLICA_COUNT; index++) {
        Address address=newPartition.getReplicaAddress(index);
        if (address != null && getMember(address) == null) {
          if (logger.isLoggable(Level.FINEST)) {
            logger.log(Level.FINEST,"String_Node_Str" + address + "String_Node_Str"+ sender+ "String_Node_Str"+ newPartition);
          }
          unknownAddresses.add(address);
        }
      }
      currentPartition.setOwner(newPartition.getOwner());
    }
    if (!unknownAddresses.isEmpty()) {
      StringBuilder s=new StringBuilder("String_Node_Str").append("String_Node_Str").append(sender).append("String_Node_Str").append("String_Node_Str").append("String_Node_Str");
      for (      Address address : unknownAddresses) {
        s.append("String_Node_Str").append(address);
      }
      s.append("String_Node_Str");
      logger.log(Level.WARNING,s.toString());
    }
    Collection<MigrationInfo> completedMigrations=partitionState.getCompletedMigrations();
    for (    MigrationInfo completedMigration : completedMigrations) {
      addCompletedMigration(completedMigration);
      finalizeActiveMigration(completedMigration);
    }
    if (!activeMigrations.isEmpty()) {
      final MemberImpl masterMember=getMasterMember();
      rollbackActiveMigrationsFromPreviousMaster(masterMember.getUuid());
    }
    for (    PartitionView newPartition : newPartitions) {
      PartitionImpl currentPartition=partitions[newPartition.getPartitionId()];
      currentPartition.setPartitionInfo(newPartition);
    }
    stateVersion.set(partitionState.getVersion());
    initialized=true;
  }
  finally {
    lock.unlock();
  }
}

Fixed version (ground truth):
void processPartitionRuntimeState(PartitionRuntimeState partitionState){
  lock.lock();
  try {
    if (!node.isActive() || !node.joined()) {
      return;
    }
    final Address sender=partitionState.getEndpoint();
    final Address master=node.getMasterAddress();
    if (node.isMaster()) {
      logger.log(Level.WARNING,"String_Node_Str" + sender + "String_Node_Str");
      return;
    }
 else {
      if (sender == null || !sender.equals(master)) {
        if (node.clusterService.getMember(sender) == null) {
          logger.log(Level.SEVERE,"String_Node_Str" + "String_Node_Str" + sender + "String_Node_Str"+ master+ "String_Node_Str");
          return;
        }
 else {
          logger.log(Level.WARNING,"String_Node_Str" + "String_Node_Str" + sender + "String_Node_Str"+ master+ "String_Node_Str"+ "String_Node_Str");
        }
      }
    }
    final Set<Address> unknownAddresses=new HashSet<Address>();
    PartitionView[] newPartitions=partitionState.getPartitions();
    for (    PartitionView newPartition : newPartitions) {
      PartitionImpl currentPartition=partitions[newPartition.getPartitionId()];
      for (int index=0; index < PartitionImpl.MAX_REPLICA_COUNT; index++) {
        Address address=newPartition.getReplicaAddress(index);
        if (address != null && getMember(address) == null) {
          if (logger.isLoggable(Level.FINEST)) {
            logger.log(Level.FINEST,"String_Node_Str" + address + "String_Node_Str"+ sender+ "String_Node_Str"+ newPartition);
          }
          unknownAddresses.add(address);
        }
      }
      currentPartition.setOwner(newPartition.getOwner());
    }
    if (!unknownAddresses.isEmpty() && logger.isLoggable(Level.WARNING)) {
      StringBuilder s=new StringBuilder("String_Node_Str").append("String_Node_Str").append(sender).append("String_Node_Str").append("String_Node_Str").append("String_Node_Str");
      for (      Address address : unknownAddresses) {
        s.append("String_Node_Str").append(address);
      }
      s.append("String_Node_Str");
      logger.log(Level.WARNING,s.toString());
    }
    Collection<MigrationInfo> completedMigrations=partitionState.getCompletedMigrations();
    for (    MigrationInfo completedMigration : completedMigrations) {
      addCompletedMigration(completedMigration);
      finalizeActiveMigration(completedMigration);
    }
    if (!activeMigrations.isEmpty()) {
      final MemberImpl masterMember=getMasterMember();
      rollbackActiveMigrationsFromPreviousMaster(masterMember.getUuid());
    }
    for (    PartitionView newPartition : newPartitions) {
      PartitionImpl currentPartition=partitions[newPartition.getPartitionId()];
      currentPartition.setPartitionInfo(newPartition);
    }
    stateVersion.set(partitionState.getVersion());
    initialized=true;
  }
  finally {
    lock.unlock();
  }
}