Corrupted Progress Database

Dear All,

Please anybody tell me how to fix my corrupted Progress database.
I've tried to do :
- proutil "mydb" -C truncate bi -F
the error is 'stack buffer overflow'

Thank's


Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Valeriy's picture

Corrupted Progress Database Preview comment

Hello,

Use large value -B with truncate bi.

See, ProKB article:

----------------------------------------------------------------------
KB-P102288: Getting "buffer stack overflow" on truncate bi, probkup off line and other single user process.
----------------------------------------------------------------------

Status: Verified

SYMPTOM(s):

Getting "buffer stack overflow" on truncate bi, probkup off line and
other single user process.

proutil -C truncate bi

Begin Physical Redo Phase at . (5326)

Physical Redo Phase Completed at blk off upd . (7161)

Begin Physical Undo transactions at block offset (7163)

Physical Undo Phase Completed at . (5331)

Begin Logical Undo Phase, incomplete transactions are being backed
out. (7162)

buffer stack overflow

FACT(s) (Environment):

All Supported Operating Systems
Progress 9.x
OpenEdge 10.x

CAUSE:

When Progress starts the database, does an off line backup or
truncation of the bi file, or any other single user operation the
default value of the -B is only 10. The truncation process is
requiring more than 10 buffers to complete the process but do not have
them and fails. The message said "buffer stack overflow message" but
should have said: there weren't "enough buffers". In newer releases
of OpenEdge this default -B has been resized to a larger value.

FIX:

Run the process with a larger value for -B.

All of the following would allow the bi file to be truncated
successfully.
ie:
proutil -C truncate bi -B 5000

pro -B 5000

proserve -B 5000


tooheymomster's picture

Would like to know what is actually happening with the commands

One of the commands I use when restoring a db is proutil -C truncate BI
I just know that's what I'm supposed to do and I don't question it... but I don't know what these commands do or why.
Could someone enlighten me?