Skip to Content

Any replacement for the -f command line option - start IQ with catalog store .log lost?

Dear all,

I'm using IQ 16.0 SP 11 XE (16.0.110.2014/10214) on Win7.

In older versions, it was possible to force the recovery of the catalog store after loss of the .log file using the "-f" command line option (as is still possible for SQL Anywhere databases). In the current version, the "-f" switch is no longer supported (although shown when running "start_iq -?") and an error message indicating this is shown.

Is there any way short of a complete DB restore to (try to) bring the IQ database back to life after the loss of the catalog store .log file? If so, is it documented (and where)? If there isn't, what were the reasons to discontinue this (besides the obvious, that a recovery based on the most recent checkpoint may not be consistent with the IQ store)?

TIA & best regards

Volker
DB-TecKnowledgy

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Best Answer
    Apr 03 at 04:33 PM

    Hi Volker,

    Is the transaction log mirror (mlg) enabled? you can check using command : dblog file.db.

    Without .log or .mlg, recovery would requires restore from backup.

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Tayeb,

      Thank you for your response. There was no .mlg. We did restore from backup, I was just wondering if there is any way to get around this. In that client's case, the .log file system ran out of space.

      I think that a situation where the IQ store contains more recent data than the last backup and the metadata have been unchanged since the most recent catalog store checkpoint is not really exotic

      Anyway, clarification helps by confirming that I didn't miss anything important, even though the result is not the desired.

      Thanks again & best regards

      Volker

  • Apr 09 at 10:54 AM

    Hi Volker,

    If the database crashed or was killed, then you would certainly need the .log to restart IQ.
    If this .log is lost, then there is no luck to restart IQ without it.

    If the database was gracefully shut down, there might ba a chance to restart it by specifing a new tran log name with
    dblog -t newTranLogName.log dbName.db

    Once that the DB can be restarted, you can shut it down again, and run dblog -t again to set the initial tran log name back,
    and restart IQ.

    If this doesn't work you have to go to a full restore.

    One of the reasons we removed -f is, too many customers misunderstood its purpose.
    Many customers getting a corruption message or a dbspace full message, use -f, which renders the corruption recovery even
    more difficult and could worsen the database inconsistency.
    In case of MPX, using -f could stop catalog synchronizations.

    Regards,
    Lyna

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Lyna,

      Thank you for your response. I somehow fail to understand the benefit of changing the .log name. If it's present, it will attempt to use it (and fail in case of mismatch). Otherwise, a new one will be created if the .db is not in need of startup recovery. Either happens regardless of the file name.

      Anyway, I had seen that -f was discontinued, I was mostly asking for confirmation that I hadn't missed an alternative.

      Thanks again & best regards

      Volker