@Override
public Response<Void> fullBackup( StoreWriter writer, boolean forensics )
{
String backupIdentifier = getBackupIdentifier();
try ( StoreWriter storeWriter = writer )
{
logger.log( "%s: Full backup started...", backupIdentifier );
RequestContext copyStartContext = storeCopyServer.flushStoresAndStreamStoreFiles(
FULL_BACKUP_CHECKPOINT_TRIGGER, storeWriter, forensics );
ResponsePacker responsePacker = new StoreCopyResponsePacker( logicalTransactionStore, transactionIdStore,
logFileInformation, storeId, copyStartContext.lastAppliedTransaction() + 1,
storeCopyServer.monitor() );
long optionalTransactionId = copyStartContext.lastAppliedTransaction();
return responsePacker.packTransactionStreamResponse( anonymous( optionalTransactionId ), null );
}
finally
{
logger.log( "%s: Full backup finished.", backupIdentifier );
}
}