返回首页

gbase数据、南大通用产品文档:GBase8s

更新日期:2024年09月11日

Cannot create new object
软件无法为新的 String 对象分配内存。

导出数据时,只有指定了format 参数为3 时,才可以指定字段包围符。此参数无默
认值,如果导出时不指定此参数,导出的数据不会被字段包围符包围。本节的示例
都基于以下表结构和数据内容。
DROP TABLE IF EXISTS message;
COMMIT;
CREATE TABLE
message(id int, name varchar2(20), message varchar2(50));
INSERT INTO message VALUES(1,'Tom','I am Tom');
INSERT INTO message VALUES(2,'小明','HHHH"KKKK');
INSERT INTO message VALUES(3,'Peter','Hello!Hello!');
INSERT INTO message VALUES(4,'Yama','send mail');
INSERT INTO message VALUES(5,'Hellen','');
INSERT INTO message VALUES(6,'','');
INSERT INTO message VALUES(7,'Seven','a book store');
INSERT INTO message VALUES(8,'MMEE','yes');
INSERT INTO message VALUES(9,'George','Thank you.');
INSERT INTO message VALUES(10,'Lastman','no message');
COMMIT;

cognos 使用odbc 驱动连接数据库问题
问题现象
cognos 使用odbc 驱动连接数据库,执行语句报错Out of memory 和Segmentation
fault。在使用cognos 刷新cube 的时候,进程因“段错误”异常终止,查看刷新
日志、cognos server 日志、transfomer 工具调用日志皆无异常(故判断与cognos
无关),后查看了linux 服务器运行日志,发现报了个驱动的错误。
SQL> call p1();
Out of memory (Needed 4171804 bytes)
[ISQL]ERROR: Could not SQLExecute
Out of memory (Needed 4171804 bytes)
Out of memory (Needed 4171804 bytes)
message 日志里面
Nov 5 15:11:23 PSTFILE kernel: isql[7263]: segfault at f30f8010 ip
00000000004d3c05 sp 00000000ffb55d80 error 6 in
libgsodbc8-8.3.so[494000+1aa000]
解决方法:
使用了32bit 的odbc 驱动,32bit 程序最多只能使用4G 内存,但是结果集大于4G
导致保存out of memory。建议使用no_cache 参数,在odbc.ini 中增加参数
no_cache=1,不再宕机,但性能会大幅下降。