Kbase P141193: Truncating database lg file with prolog fails
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  13/03/2009 |
|
Status: Verified
SYMPTOM(s):
prolog online fails to truncate the database lg file
truncating the database lg file offline aborts
The status of the log file for /usr1/db/dbname.lg is:
uname -2117937864 Wed Feb 11 13:32:48 2009 /usr1/db/dbname.lg
(1)lseek failed -13872 with error 0
D:\db\dbname.lg is less than 3072 bytes - truncation aborted.
After the database lg file truncation failure, the lg file is still same size as it was previously
FACT(s) (Environment):
Progress 9.x
OpenEdge 10.1x
OpenEdge 10.2A
All Supported Operating Systems
CAUSE:
The database lg file is larger than 2GB. The lseek position is still 32-bit limited for prolog.
CAUSE:
Bug# OE00180941
FIX:
This issue is fixed in Service Packs 10.1C04 and 10.2A01
Workaround: OFFLINE
a. Use OS utilites to archive the current database lg file for later reference
b. Instead of running prolog, delete the database lg file
Workaround: ONLINE
a. Use OS utilites to archive the current database lg file for later reference
b. First check for size of lg file before running prolog:
EXAMPLE [UNIX]:
SIZE=`ls -ls dbname.lg | awk '{ print $1 }'`
if [ $SIZE -lt 2097152 ] # if lg file is < 2 GB
then
prolog dbname.lg
fi
EXAMPLE [WINDOWS]:
for /f %%a IN ('dir /b *.lg') DO (
if 2097152 geq %%~zF call runprolog.bat %%~na %%~xa
)
# runprolog.bat
CALL prolog %1
For database lg files < 2GB please refer to Solution P20131, "How to truncate a database log online."