我在Informix中创建BTS(基本文本搜索)索引时遇到问题。我创建了测试表和智能大对象空间来存储索引信息,就像它在文档中一样。现在我的sbspace看起来像:
[informix@test-informix informix]$ onspaces -c -S bts_sbspace -p /home/informix/chunks/bts_sbspace -o 0 -s 1500000 -Df "LOGGING=ON"
...
[informix@test-informix informix]$ onstat -d | grep SB
ed682820 7 0x68001 7 3 2048 N SB informix sbspace
fd409e00 14 0x68001 73 1 2048 N SB informix bts_sbspace
ed8c1028 7 7 0 50000 43896 44061 POSBD /home/informix/IFMXDATA/ol_testifx/sbspacedbs.000
edb82db8 30 7 0 500000 466235 466319 POSBD /home/informix/IFMXDATA/ol_testifx/sbspacedbs.001
ee7fe028 31 7 0 500000 466306 466319 POSBD /home/informix/IFMXDATA/ol_testifx/sbspacedbs.002
fd40de00 73 14 0 750000 699446 699446 POSBD /home/informix/chunks/bts_sbspace
但是当我想创建索引时:
CREATE INDEX lab1_bts_index ON lab1(text_data bts_lvarchar_ops) USING BTS IN bts_sbspace;
以错误结束:
Error: bts internal error. File c/bts_am_extspace.c, line 505
SQLState: BTS02
ErrorCode: -937
Position: 88
我使用IBM Informix Dynamic Server Version 11.50.FC4
注册了bts2.0
测试数据库。
如何创建BTS索引?
答案 0 :(得分:1)
您的示例工作在我的11.50uc7上运行正常但具有不同的表架构。 可能是你遇到了IC81229的错误。
onmode -p +1 bts
echo "register bts.2.00 stores"|blademgr
onspaces -c -S bts_sbspace -p /home/informix/ids1150uc7/bts_sbspace -o 0 -s 2000 -Df "LOGGING=ON"
create table tclob (id integer,c clob);
create index ixclob on tclob (c bts_clob_ops) using bts in bts_sbspace