Archived

This forum has been archived. Please start a new discussion on GitHub.

Freezen Errror !how to do?

I use Freeze in my application as Object pool.
My application has 2 thread ,one write Object to db,another read object and remove it after some operations !
Freeze Failed with follow Messages:
Berkeley DB: DbEnv "submit": transaction has active cursors ]
Berkeley DB: DbEnv "submit": PANIC: Invalid argument ]
rite SUBMIT Failed
Berkeley DB: DbEnv "submit": PANIC: fatal region error detected; run recovery

\SharedDb.cpp:438: Freeze:atabaseException:
b::close: DB_RUNRECOVERY: Fatal error, run database recovery
et SUBMIT Failed
Berkeley DB: DbEnv "submit": PANIC: fatal region error detected; run recovery

eopen SUBMIT DBMes日期ec 21 2005,文件:.\SubmitMempool.cpp,行数:110 的
================================================== ===
In my thread i use CriticalSection to keep SYNCHONIZED
Last edited by lifejoy : 12-20-2005 at 09:55 PM.

Comments

  • bernard
    bernard Jupiter, FL
    Hi,

    With Freeze Maps, you can either use a single connection and map, are fully serialize access to them (in particular serialize transactions and iterations), or use separate connection and map objects (that refer to the same database environment and file) in each thread.

    If that's not the problem, I recommend to reduce your program to a simple test case and post it on this forum.

    Cheers,
    Bernard