Hi,
I am using db-4.3.28 on AIX-5.1.
I am testing my application for exceptional scenarios, one of those is
behaviour of the system when HardDisk is full.
When the Harddisk space becomes full, my application core dumps in add
opration.
when we do any DB operation system core dump..
Stack is-----
Bus error in moveeq.memcpy
[/enip/Gurpreet/enip/service/sys/servicerun/bin/libdb
_cxx-4.3.so] at 0x9000000152a24d8 ($t14)
0x9000000152a24d8 (memcpy+0x78) f8e60009 stdu r7,0x8(r6)
(dbx) where
moveeq.memcpy() at 0x9000000152a24d8
__log_fill(??, ??, ??, ??), line 1035 in "log_put.c"
__log_putr(??, ??, ??, ??, ??), line 649 in "log_put.c"
__log_put_next(??, ??, ??, ??, ??), line 392 in "log_put.c"
log_put.__log_put(??, ??, ??, ??), line 154 in "log_put.c"
db_auto.__db_addrem_log(??, ??, ??, ??, ??, ??, ??, ??), line 187 in
"db_auto.c"
db_dup.__db_pitem(??, ??, ??, ??, ??, ??), line 133 in "db_dup.c"
bt_put.__bam_iitem(??, ??, ??, ??, ??), line 350 in "bt_put.c"
bt_cursor.__bam_c_put(??, ??, ??, ??, ??), line 1950 in "bt_cursor.c"
db_cam.__db_c_put(??, ??, ??, ??), line 1363 in "db_cam.c"
db_am.__db_put(??, ??, ??, ??, ??), line 391 in "db_am.c"
db_iface.__db_put_pp(0x115095ff8, 0x1152cb978, 0x1152ca2a0,
0x1152ca2c0, 0x16000
00016), line 1369 in "db_iface.c"
put(DbTxn*,Dbt*,Dbt*,unsigned int)(??, ??, ??, ??, ??), line 343 in
"cxx_db.cpp"
CCfgStoreBdbImpl.addTCode(const
commonservices::configservice::TCode&,const comm
onservices::configservice::TCode&,DbTxn*)(0x11508e d30, 0x1152ca450,
0x1152ca560,
0x114d8ff50), line 3340 in "CCfgStoreBdbImpl.cpp"
Flags used are------
DB Flags = DB_CREATE| DB_AUTO_COMMIT|DB_THREAD;
Environment Flags = DB_RECOVER |DB_CREATE | DB_INIT_LOCK | DB_INIT_LOG
Quote:
DB_INIT_MPOOL | DB_INIT_TXN|DB_THREAD|DB_PANIC_ENVIRONMENT; |
All the operations are Transaction supported....
Also the docs provided by BDB as a part of release says:
Berkeley DB can continue to run when when out-of-disk-space errors
occur, but it requires the application to be transaction protected.
Applications which do not enclose update operations in transactions
cannot recover from out-of-disk-space errors, and the result of running
out of disk space may be database corruption.
But my application is
core dumping.
Please help if anyone knows the reason
Thanks and Regards,
Gurpreet