JavaAPIを使用して行のタイムスタンプを設定する際に問題が発生します。
putコンストラクター(またはput.add())にタイムスタンプ値を追加しようとすると何も起こらず、テーブルから行を読み取った後、システムが提供するタイムスタンプを取得します。
public static boolean addRecord(String tableName, String rowKey,
String family, String qualifier, Object value)
{
try {
HTable table = new HTable(conf, tableName);
Put put = new Put(Bytes.toBytes(rowKey), 12345678l);
put.add(Bytes.toBytes(family), Bytes.toBytes(qualifier), Bytes.toBytes(value.toString()));
table.put(put);
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
スタンドアロンモードで実行されているHBase0.92.1。
助けてくれてありがとう!