Can't read online log, Log Rescue throws an exception

PSPDBAPSPDBA Posts: 3
edited December 15, 2006 11:12AM in SQL Log Rescue
Log rescue hangs at "Analysing log files" and the following shows in the event viewer:

Event Type: Error
Event Source: SQL Log Rescue
Event Category: None
Event ID: 0
Date: 12/13/2006
Time: 12:56:33 PM
User: N/A
Computer: **********SERVER NAME HERE********
Description:
RedGate.LogRescue.Engine.CriticalEngineException
SQL Log Rescue cannot access the live log.

Server stack trace:
at RedGate.LogRescue.Engine.LogEngine._1(Int32 , SqlConnection )
at RedGate.LogRescue.Engine.LogEngine.InitCheckPreconditions()
at _36._8()
at System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(MethodBase mb, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)

Exception rethrown at [0]:
at RedGate.SQL.Controls.ProgressDialog.Run(ICancellable executor, ProgressDialogStart startMethod)
at _36._1(WizardPageCancelEventArgs , Boolean )
at _36._3(Object , WizardPageCancelEventArgs )
at ActiproSoftware.Wizard.WizardPage.ᐂ(WizardPageCancelEventArgs )
at ActiproSoftware.Wizard.Wizard.ᐃ(WizardPageCancelEventArgs )
at ActiproSoftware.Wizard.Wizard.ᐍ(Object , EventArgs )
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

Comments

  • Brian DonahueBrian Donahue Posts: 6,590 New member
    It would be interesting to know what is causing this. It would either be a permissions problem, or a file not found problem. Log Rescue is looking for one or more LDF files that serve as the log for the database. First, Log Rescue checks the database's sysfiles table. What are the results of this query when you run it connected to the database that you want to analyze?
    select top 1 filename from <name of database>..sysfiles1  where ((status & 0x40) !=0)
    
    Log Rescue doesn't seem to cannonicalize the path in the same way Windows does (a bug we're looking into). If you see a lot of relative paths (read, lots of double dots (..)), then the issue is that Log Rescue may not be able to find the file.

    The next step, I suppose, would be to log in as a sysadmin user in the Log Rescue settings, and see if that helps.
  • Nope, no double dots and the file is pointing to the absolute path.

    I restored the database to a different server and it worked fine. The only thing I can think of is that this database is part of a replication scheme, and the log reader agent is preventing Log Rescue from seeing the T-log file.

    D:\Program Files\Microsoft SQL Server\MSSQL$INSTANCE_NAME\Data\Database_Log.ldf                                                                                                                                                                
    
  • Brian DonahueBrian Donahue Posts: 6,590 New member
    Hi,

    Log Rescue should be reading the log from the SQL Server's process, so you'd figure the the replication wouldn't be stepping on it because if SQL Server can't read the log, that would effectively render the database nonoperational.
Sign In or Register to comment.