• Topic
  • Discussion
  • VirtuosoWikiWeb.InvalidLogEntry(Last) -- Owiki? , 2016-08-19 15:01:34 Edit owiki 2016-08-19 15:01:34

    How do I recover from "Invalid log entry in replay" when transaction log is being replayed during server start?

    A Virtuoso transaction log file may fail to replay, with an error of the form:

    11:42:57 Invalid log entry in replay. Delete transaction log virtuoso.trx or truncate at point of error. 
    Valid data may exist after this record. A log record begins with bytes 193 188 5 188 0. Error at offset 13205546
    11:42:57 Searching for the next valid header signature starting at 13205547
    11:42:57 No valid looking header found.
    11:42:57 Server exiting
    


    This can be recovered by truncating to the transaction log to the reported error offset.

    Users of Unix-like OS can use the built-in dd command; Windows users must first install WinDD or cygwin to get the same functionality.

    Given the error above, the recovery steps on a Unix-like OS would look like --

    # mv virtuoso.trx old.trx
    # dd if=old.trx of=new.trx bs=1 count=13205546
    13205546+0 records in
    13205546+0 records out
    # mv new.trx virtuoso.trx
    # virtuoso-iodbc-t -f
    


    Restarting Virtuoso should now succeed.


    Referenced by...