Log file full, no tape backup to reset it
Posted in 1999
A user's logical logs filled up on a non-production server with no working tape drive, blocking the engine; attempts to add/drop logs via onparams/onmonitor failed with "must be in quiescent mode" (she had used onstat rather than onmode -s/oninit -s to change mode). Consensus answer: set LTAPEDEV to /dev/null (NUL on NT) and run ontape (-a, or -c for continuous), which marks logs as backed up and frees them immediately — ontape re-reads the ONCONFIG, which the running engine does not. Caveat noted: no log recovery is then possible, so it's unsuitable for production.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Backup & Restore
Well, in future, set LTAPEDEV to /dev/null. Then your logs won't fill.
What is your LTAPEDEV value set to now? Can you do an ontape -a to get
going again? Even if LTAPEDEV is set to a non-existing device, you could
delete this device then link to /dev/null.
Neil
Elizibeth Loveland wrote in message <36ED5099.4B93@foxinternet.net>...
>My log file became full when i was building a new db in the server. I
>used onstat -u/-s to get into quiescent mode so I could use
>onmonitor/onparams to remove logs or add space but, although there was
>no error from onstat, the engine would not execute the
>onparams/onmonitor instruction and always returned a stmt that I had to
>be in quiescent mode -- even though I was or had atleast successfully
>executed the command.
>
>This is not a live db and I do not have a working tape unit on it or
>care about saving the log file. There are other db's on the server that
>I do want to keep -- also not live.
>
>How can I reset the logfile status without a backup?
>Someone have some quick & dirty (db not live) to get beyond this and
>get the engine up and running normally again?
>
>
>Thanks.
Set your LTAPEDEV to /dev/null (or NUL on NT).
Elizibeth Loveland wrote:
> My log file became full when i was building a new db in the server. I
> used onstat -u/-s to get into quiescent mode so I could use
> onmonitor/onparams to remove logs or add space but, although there was
> no error from onstat, the engine would not execute the
> onparams/onmonitor instruction and always returned a stmt that I had to
> be in quiescent mode -- even though I was or had atleast successfully
> executed the command.
>
> This is not a live db and I do not have a working tape unit on it or
> care about saving the log file. There are other db's on the server that
> I do want to keep -- also not live.
>
> How can I reset the logfile status without a backup?
> Someone have some quick & dirty (db not live) to get beyond this and
> get the engine up and running normally again?
>
> Thanks.
In article <36ED5099.4B93@foxinternet.net>,
elizabethl@foxinternet.net wrote:
> My log file became full when i was building a new db in the server. I
> used onstat -u/-s to get into quiescent mode so I could use
> onmonitor/onparams to remove logs or add space but, although there was
> no error from onstat, the engine would not execute the
> onparams/onmonitor instruction and always returned a stmt that I had to
> be in quiescent mode -- even though I was or had atleast successfully
> executed the command.
>
> This is not a live db and I do not have a working tape unit on it or
> care about saving the log file. There are other db's on the server that
> I do want to keep -- also not live.
>
> How can I reset the logfile status without a backup?
> Someone have some quick & dirty (db not live) to get beyond this and
> get the engine up and running normally again?
>
> Thanks.
The onmode -s command puts your engine in quiescent mode.
Try setting your LTAPEDEV configuration parameter to /dev/null
and run ontape -c to simulate a backup of your Logical Logs.
This will mark the Logs as backed up allowing further processing.
What version of the engine are you running?
Frank Testa
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
My log file became full when i was building a new db in the server. I
used onstat -u/-s to get into quiescent mode so I could use
onmonitor/onparams to remove logs or add space but, although there was
no error from onstat, the engine would not execute the
onparams/onmonitor instruction and always returned a stmt that I had to
be in quiescent mode -- even though I was or had atleast successfully
executed the command.
This is not a live db and I do not have a working tape unit on it or
care about saving the log file. There are other db's on the server that
I do want to keep -- also not live.
How can I reset the logfile status without a backup?
Someone have some quick & dirty (db not live) to get beyond this and
get the engine up and running normally again?
Thanks.
Elizibeth Loveland <elizabethl@foxinternet.net> wrote in article
<36ED5099.4B93@foxinternet.net>...
> My log file became full when i was building a new db in the server. I
> used onstat -u/-s to get into quiescent mode so I could use
You should use oninit -s or onmonitor to go to quiescent mode.
> onmonitor/onparams to remove logs or add space but, although there was
> no error from onstat, the engine would not execute the
> onparams/onmonitor instruction and always returned a stmt that I had to
> be in quiescent mode -- even though I was or had atleast successfully
> executed the command.
You can verify that you are in the proper mode by executing "onstat -".
The first line of the output will tell you what mode you are in.
>
> This is not a live db and I do not have a working tape unit on it or
> care about saving the log file. There are other db's on the server that
> I do want to keep -- also not live.
>
> How can I reset the logfile status without a backup?
You should probably do a continuous tape backup to dev\\null, then your logs
will never fill again. Do this only if the other dbs on the system don't
need to be logged either.
> Someone have some quick & dirty (db not live) to get beyond this and
> get the engine up and running normally again?
>
>
> Thanks.
>
Regards,
Robert
I think that there is some confusion about the usage of "/dev/null" (NUL on
NT). for the LTAPEDEV. This does not prevent the usage of a logged database,
transactions, or rollbacks. Nor do you have to run contineous backup of the
log files. It does mean that you can not recover the log files during a system
restore.
What this is used to do is to cause the log files to be freed when they are
needed again.
For instance, if we have 10 log files and they are currently numbered 100-109.
If we are currently on log file 109 and have to go to the next one then 100
will be renumbered as log file 110. If LTAPEDEV is not '/dev/null' then log
file 100 must be backed up before it can be reused as log file 110. If
LTAPEDEV is '/dev/null', then the backup is not done.
This is not normally a recommended way to run a production shop because there
can be no long recovery of the instance.
RG wrote:
> Elizibeth Loveland <elizabethl@foxinternet.net> wrote in article
> <36ED5099.4B93@foxinternet.net>...
> > My log file became full when i was building a new db in the server. I
> > used onstat -u/-s to get into quiescent mode so I could use
>
> You should use oninit -s or onmonitor to go to quiescent mode.
>
> > onmonitor/onparams to remove logs or add space but, although there was
> > no error from onstat, the engine would not execute the
> > onparams/onmonitor instruction and always returned a stmt that I had to
> > be in quiescent mode -- even though I was or had atleast successfully
> > executed the command.
>
> You can verify that you are in the proper mode by executing "onstat -".
> The first line of the output will tell you what mode you are in.
>
> >
> > This is not a live db and I do not have a working tape unit on it or
> > care about saving the log file. There are other db's on the server that
> > I do want to keep -- also not live.
> >
> > How can I reset the logfile status without a backup?
>
> You should probably do a continuous tape backup to dev\\null, then your logs
> will never fill again. Do this only if the other dbs on the system don't
> need to be logged either.
>
> > Someone have some quick & dirty (db not live) to get beyond this and
> > get the engine up and running normally again?
> >
> >
> > Thanks.
> >
>
> Regards,
> Robert
In article <36EE9399.A76B3A16@informix.com>, Madison Pruet
<mpruet@informix.com> writes
>I think that there is some confusion about the usage of "/dev/null" (NUL on
>NT). for the LTAPEDEV. This does not prevent the usage of a logged database,
>transactions, or rollbacks. Nor do you have to run contineous backup of the
>log files. It does mean that you can not recover the log files during a system
>restore.
>
Correct, however online does not continually re-read the onconfig file
hence it will NOT notice that you have changed the LTAPEDEV
parameter!!
Just set it to /dev/null and do an ontape -a.
ontape re-reads the onconfig file and tell online that the device is
now /dev/null. Hence they get freed immediately...
>What this is used to do is to cause the log files to be freed when they are
>needed again.
>
>For instance, if we have 10 log files and they are currently numbered 100-109.
>If we are currently on log file 109 and have to go to the next one then 100
>will be renumbered as log file 110. If LTAPEDEV is not '/dev/null' then log
>file 100 must be backed up before it can be reused as log file 110. If
>LTAPEDEV is '/dev/null', then the backup is not done.
>
>This is not normally a recommended way to run a production shop because there
>can be no long recovery of the instance.
>
>RG wrote:
>
>> Elizibeth Loveland <elizabethl@foxinternet.net> wrote in article
>> <36ED5099.4B93@foxinternet.net>...
>> > My log file became full when i was building a new db in the server. I
>> > used onstat -u/-s to get into quiescent mode so I could use
>>
>> You should use oninit -s or onmonitor to go to quiescent mode.
>>
>> > onmonitor/onparams to remove logs or add space but, although there was
>> > no error from onstat, the engine would not execute the
>> > onparams/onmonitor instruction and always returned a stmt that I had to
>> > be in quiescent mode -- even though I was or had atleast successfully
>> > executed the command.
>>
>> You can verify that you are in the proper mode by executing "onstat -".
>> The first line of the output will tell you what mode you are in.
>>
>> >
>> > This is not a live db and I do not have a working tape unit on it or
>> > care about saving the log file. There are other db's on the server that
>> > I do want to keep -- also not live.
>> >
>> > How can I reset the logfile status without a backup?
>>
>> You should probably do a continuous tape backup to dev\\null, then your logs
>> will never fill again. Do this only if the other dbs on the system don't
>> need to be logged either.
>>
>> > Someone have some quick & dirty (db not live) to get beyond this and
>> > get the engine up and running normally again?
>> >
>> >
>> > Thanks.
>> >
>>
>> Regards,
>> Robert
>
>
>
--
David Williams
I've been an Informix DBA for two years now, and want to confirm that the technique
mentioned by Mr. Williams is the BEST (and simplest, too) method of correcting this
problem.
David Williams wrote:
> In article <36EE9399.A76B3A16@informix.com>, Madison Pruet
> <mpruet@informix.com> writes
> >I think that there is some confusion about the usage of "/dev/null" (NUL on
> >NT). for the LTAPEDEV. This does not prevent the usage of a logged database,
> >transactions, or rollbacks. Nor do you have to run contineous backup of the
> >log files. It does mean that you can not recover the log files during a system
> >restore.
> >
> Correct, however online does not continually re-read the onconfig file
> hence it will NOT notice that you have changed the LTAPEDEV
> parameter!!
>
> Just set it to /dev/null and do an ontape -a.
>
> ontape re-reads the onconfig file and tell online that the device is
> now /dev/null. Hence they get freed immediately...
>
> >What this is used to do is to cause the log files to be freed when they are
> >needed again.
> >
> >For instance, if we have 10 log files and they are currently numbered 100-109.
> >If we are currently on log file 109 and have to go to the next one then 100
> >will be renumbered as log file 110. If LTAPEDEV is not '/dev/null' then log
> >file 100 must be backed up before it can be reused as log file 110. If
> >LTAPEDEV is '/dev/null', then the backup is not done.
> >
> >This is not normally a recommended way to run a production shop because there
> >can be no long recovery of the instance.
> >
> >RG wrote:
> >
> >> Elizibeth Loveland <elizabethl@foxinternet.net> wrote in article
> >> <36ED5099.4B93@foxinternet.net>...
> >> > My log file became full when i was building a new db in the server. I
> >> > used onstat -u/-s to get into quiescent mode so I could use
> >>
> >> You should use oninit -s or onmonitor to go to quiescent mode.
> >>
> >> > onmonitor/onparams to remove logs or add space but, although there was
> >> > no error from onstat, the engine would not execute the
> >> > onparams/onmonitor instruction and always returned a stmt that I had to
> >> > be in quiescent mode -- even though I was or had atleast successfully
> >> > executed the command.
> >>
> >> You can verify that you are in the proper mode by executing "onstat -".
> >> The first line of the output will tell you what mode you are in.
> >>
> >> >
> >> > This is not a live db and I do not have a working tape unit on it or
> >> > care about saving the log file. There are other db's on the server that
> >> > I do want to keep -- also not live.
> >> >
> >> > How can I reset the logfile status without a backup?
> >>
> >> You should probably do a continuous tape backup to dev\\null, then your logs
> >> will never fill again. Do this only if the other dbs on the system don't
> >> need to be logged either.
> >>
> >> > Someone have some quick & dirty (db not live) to get beyond this and
> >> > get the engine up and running normally again?
> >> >
> >> >
> >> > Thanks.
> >> >
> >>
> >> Regards,
> >> Robert
> >
> >
> >
>
> --
> David Williams
--
Richard C. Auslander
Database Manager
AirFlash, Inc.
1733 Woodside Rd., Suite #110
Redwood City, CA 94061
(650) 556-7928
www.airflash.com