Chinaunix
标题:
oci ,以及dmalloc問題,請朋友們指點
[打印本页]
作者:
gangjh
时间:
2006-12-08 20:41
标题:
oci ,以及dmalloc問題,請朋友們指點
版主請不要刪,我在C++版掛了幾天沒人理,只好轉這里了 !
http://bbs.chinaunix.net/viewthr ... &extra=page%3D4
環境說明:
OS : Debian Linux testing
Oracle :Oracle 10.2.0.1.0
dmalloc :5.4.2-5
疑問一.
OCIEnvCreate, OCIHandleFree是否使用正確 ?
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <dmalloc.h>
#include "oci.h"
int main(int argc, char *argv[])
{
OCIEnv *envhp;
if (OCIEnvCreate ( &envhp, (ub4)OCI_DEFAULT, (dvoid *)0,
(dvoid * (*)(dvoid *, size_t)) 0,
(dvoid * (*)(dvoid *, dvoid *, size_t)) 0,
(void (*)(dvoid *, dvoid *)) 0,
(size_t) 0,
(dvoid **) 0)) {
printf("couldn't create environment");
}
OCIHandleFree ((dvoid *)envhp, OCI_HTYPE_ENV);
exit(0) ;
}
复制代码
疑問二:
編譯:
$gcc -I /app/oracle/product/10.2.0.1/rdbms/public/ -L /app/oracle/product/10.2.0.1/lib/ -o aa aa.c -ldmalloc -lclntsh
$dmalloc -l aa.log all
$DMALLOC_OPTIONS=debug=0xcf66d2b,log=aa.log
$export DMALLOC_OPTIONS
复制代码
執行後得到aa.log檔. 發現很多沒有釋放的指針 (附檔aa.log.gz)
請幫忙分析一下,是Oracle bug,還是我使用錯誤!
1165293967: 312: top 10 allocations:
1165293967: 312: total-size count in-use-size count source
1165293967: 312: 408211 3 384987 1 ra=0xb7682d8c
1165293967: 312: 145150 18 145150 18 ra=0xb7c0b866
1165293967: 312: 129404 5 129404 5 ra=0xb7b9e11d
1165293967: 312: 5200 5 5200 5 ra=0xb7bf4ee2
1165293967: 312: 4092 31 3564 27 ra=0xb7bf169e
1165293967: 312: 3468 1 3468 1 ra=0xb7c735db
1165293967: 312: 2080 2 2080 2 ra=0xb7bf5a6e
1165293967: 312: 1408 4 0 0 ra=0xb705da1f
1165293967: 312: 1224 3 408 1 ra=0xb7c6b2ba
1165293967: 312: 706400 214 678731 117 Total of 50
1165293967: 312: Dumping Not-Freed Pointers Changed Since Start:
1165293967: 312: not freed: '0xb6c92008|s1' (103328 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cac808|s1' (860 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cacc08|s1' (792 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cb4008|s1' (2216 bytes) from 'ra=0xb7b9e11d'
1165293967: 312: not freed: '0xb6cb5008|s1' (22208 bytes) from 'ra=0xb7b9e11d'
[
本帖最后由 gangjh 于 2006-12-8 20:46 编辑
]
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2