2011-12-18 6 views
1

私はそれを時間順に並べて、cassandraにデータを保存しようとしています。 TimeUUIDTypeをキーとして使用するのに問題があります。PHPCassa - uuidタイムスタンプをキーとして使用しているときに挿入できません

私は次のようにカサンドラ・CLIを使用してテストテーブルを作成し

$pool = new ConnectionPool("Keyspace1", array("localhost:9160")); 
$column_family = new ColumnFamily($pool, 'users'); 
$column_family->insert(CassandraUtil::uuid1(), array('name' => 'value')); 

... insertメソッドを呼び出すときにこれが発生し

Fatal error: Uncaught exception 'cassandra_InvalidRequestException' 
with message 'TimeUUID should be 16 or 0 bytes (6)' 

... phpcassaと次のエラーを取得しますコマンド...

CREATE COLUMN FAMILY users WITH comparator = TimeUUIDType; 

答えて

1

は、行キーではなく列名に適用されます。行キーをTimeUUIDにする場合は、代わりにkey_validation_classを設定する必要があります。

Cassandraでは、列名にTimeUUIDが必要ですが、通常の文字列を渡しているため、この例外が発生しています。

関連する問題