У меня проблема с созданием индекса BTS (базового текстового поиска) в Informix. Я создал тестовую таблицу и sbspace для хранения информации индекса точно так же, как в документации. Теперь мой sbspace выглядит следующим образом:Как создать индекс BTS в Informix
[[email protected] informix]$ onspaces -c -S bts_sbspace -p /home/informix/chunks/bts_sbspace -o 0 -s 1500000 -Df "LOGGING=ON"
...
[[email protected] 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?
Похоже, что эта база данных была dbexported/dbimported и некоторые таблицы БТС находятся в неправильном состоянии, поэтому регистрация/БТС даже регистрацией, когда он говорит, что «успех» на самом деле не работают. Я смог создать индекс BTS на другой, новой базе данных. –