Program: 97376
Project: 97376
Buggy source:
@SuppressWarnings("String_Node_Str") @Override public Branch handleTxWork(OseeConnection connection) throws OseeCoreException {
  TransactionRecord savedTx=txCache.getOrLoad(branchData.getSourceTransactionId(txCache));
  TransactionRecord priorTx=txCache.getPriorTransaction(savedTx);
  branchData.setFromTransaction(priorTx);
  Callable<Branch> callable=new CreateBranchDatabaseTxCallable(getLogger(),getDatabaseService(),getBranchCache(),getTxCache(),branchFactory,txFactory,branchData);
  try {
    internalBranch=callable.call();
    String guid=branchData.getGuid();
    if (!GUID.isValid(guid)) {
      guid=GUID.create();
    }
    Timestamp timestamp=GlobalTime.GreenwichMeanTimestamp();
    int nextTransactionId=getDatabaseService().getSequence().getNextTransactionId();
    String creationComment=branchData.getCreationComment() + "String_Node_Str" + savedTx.getId();
    getDatabaseService().runPreparedUpdate(connection,INSERT_TX_DETAILS,internalBranch.getId(),nextTransactionId,creationComment,timestamp,branchData.getUserArtifactId(),TransactionDetailsType.NonBaselined.getId());
    TransactionRecord record=txFactory.create(nextTransactionId,internalBranch.getId(),creationComment,timestamp,branchData.getUserArtifactId(),RelationalConstants.ART_ID_SENTINEL,TransactionDetailsType.Baselined,branchCache);
    txCache.cache(record);
    populateTransaction(0.30,connection,record.getId(),internalBranch,savedTx);
  }
 catch (  Exception ex) {
    OseeExceptions.wrapAndThrow(ex);
  }
  return internalBranch;
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") @Override public Branch handleTxWork(OseeConnection connection) throws OseeCoreException {
  TransactionRecord savedTx=txCache.getOrLoad(branchData.getSourceTransactionId(txCache));
  TransactionRecord priorTx=txCache.getPriorTransaction(savedTx);
  branchData.setFromTransaction(priorTx);
  Callable<Branch> callable=new CreateBranchDatabaseTxCallable(getLogger(),getDatabaseService(),getBranchCache(),getTxCache(),branchFactory,txFactory,branchData);
  try {
    internalBranch=callable.call();
    String guid=branchData.getGuid();
    if (!GUID.isValid(guid)) {
      guid=GUID.create();
    }
    Timestamp timestamp=GlobalTime.GreenwichMeanTimestamp();
    int nextTransactionId=getDatabaseService().getSequence().getNextTransactionId();
    String creationComment=branchData.getCreationComment() + "String_Node_Str" + savedTx.getId();
    getDatabaseService().runPreparedUpdate(connection,INSERT_TX_DETAILS,internalBranch.getId(),nextTransactionId,creationComment,timestamp,branchData.getUserArtifactId(),TransactionDetailsType.NonBaselined.getId());
    TransactionRecord record=txFactory.create(nextTransactionId,internalBranch.getId(),creationComment,timestamp,branchData.getUserArtifactId(),RelationalConstants.ART_ID_SENTINEL,TransactionDetailsType.Baselined,branchCache);
    txCache.cache(record);
    populateTransaction(0.30,connection,record.getId(),internalBranch,savedTx);
    UpdatePreviousTxCurrent updater=new UpdatePreviousTxCurrent(getDatabaseService(),internalBranch,connection);
    updater.updateTxNotCurrentsFromTx(record.getId());
  }
 catch (  Exception ex) {
    OseeExceptions.wrapAndThrow(ex);
  }
  return internalBranch;
}