Я использую datastax с cassandra. Я хочу, чтобы строка была автоматически удалена через 15 минут после ее вставки. Но строка все еще остается.Cassandra TTL не работает
Мой код ниже:
Insert insertStatement = QueryBuilder.insertInto(keySpace, "device_activity");
insertStatement.using(QueryBuilder.ttl(15* 60));
insertStatement.value("device", UUID.fromString(persistData.getSourceId()));
insertStatement.value("lastupdatedtime", persistData.getLastUpdatedTime());
insertStatement.value("devicename", persistData.getDeviceName());
insertStatement.value("datasourcename", persistData.getDatasourceName());
В таблице состоит из 4-х колонок: устройство (UUID), DataSourceName (текст), имя_устройства (текст), lastupdatedtime (метка времени).
Если я запрашиваю TTL какого-либо поля, это показывает мне 4126 секунд, что неверно. // Выберите TTL (devicename) из device_activity; // Дает мне 4126 секунд
Запрос, наконец, выполняется это INSERT INTO devicecloud_test.device_activity (устройство, lastupdatedtime, имя_устройства, DataSourceName) VALUES (ca5cff1f-b23a -426a-ba3f-f13300a2d8e6,1461150305100, 'TestBench162', '259642460471175') ИСПОЛЬЗОВАНИЕ TTL 60; – Renukaradhya
Я не понимаю, TTL, который используется Cassandra, это 4126 или 60 секунд? – doanduyhai
Я дал 900 секунд, но cassandra показывает мне 4126 секунд – Renukaradhya