はじめに
最近Aerospikeを触ることがあり、その中で起きた問題について簡単にまとめます
問題
以下のファイルを用意しました
insert
INSERT INTO test.log (PK, user, timestamp) VALUES ('12', 'user1', 1554516055000)
CREATE INDEX timestamp_index ON test.log (timestamp) NUMERIC
そしてaerospike-serverのコンテナの中で以下のコマンドを実行します
$ aql -f /data/config/aerospike/log-as/insert
ここでインサートはしっかり実行されるのですが、INDEXは作成されませんでした
$ SHOW INDEXES
// 何も表示されない
解決方法
insertファイルの最後に1行空白行を追加するとうまくいきました
insert
INSERT INTO test.log (PK, user, timestamp) VALUES ('12', 'user1', 1554516055000)
CREATE INDEX timestamp_index ON test.log (timestamp) NUMERIC
おわりに
なぜ1行追加して動くのは謎ですが、こういう事象が以前にもあったとお話を聞きました