fixed time series cache
This commit is contained in:
parent
10cf607a95
commit
81bf9598fc
@ -33,18 +33,14 @@ import org.thingsboard.server.common.data.kv.BasicTsKvEntry;
|
|||||||
import org.thingsboard.server.common.data.kv.DeleteTsKvQuery;
|
import org.thingsboard.server.common.data.kv.DeleteTsKvQuery;
|
||||||
import org.thingsboard.server.common.data.kv.TsKvEntry;
|
import org.thingsboard.server.common.data.kv.TsKvEntry;
|
||||||
import org.thingsboard.server.common.data.kv.TsKvLatestRemovingResult;
|
import org.thingsboard.server.common.data.kv.TsKvLatestRemovingResult;
|
||||||
import org.thingsboard.server.common.data.page.PageData;
|
|
||||||
import org.thingsboard.server.common.data.page.PageLink;
|
|
||||||
import org.thingsboard.server.common.stats.DefaultCounter;
|
import org.thingsboard.server.common.stats.DefaultCounter;
|
||||||
import org.thingsboard.server.common.stats.StatsFactory;
|
import org.thingsboard.server.common.stats.StatsFactory;
|
||||||
import org.thingsboard.server.dao.cache.CacheExecutorService;
|
import org.thingsboard.server.dao.cache.CacheExecutorService;
|
||||||
import org.thingsboard.server.dao.model.sqlts.latest.TsKvLatestEntity;
|
|
||||||
import org.thingsboard.server.dao.timeseries.TimeseriesLatestDao;
|
import org.thingsboard.server.dao.timeseries.TimeseriesLatestDao;
|
||||||
import org.thingsboard.server.dao.timeseries.TsLatestCacheKey;
|
import org.thingsboard.server.dao.timeseries.TsLatestCacheKey;
|
||||||
import org.thingsboard.server.dao.util.SqlTsLatestAnyDaoCachedRedis;
|
import org.thingsboard.server.dao.util.SqlTsLatestAnyDaoCachedRedis;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
|
|||||||
@ -189,7 +189,7 @@ public class SqlTimeseriesLatestDao extends BaseAbstractSqlTimeseriesDao impleme
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private ListenableFuture<TsKvLatestRemovingResult> getNewLatestEntryFuture(TenantId tenantId, EntityId entityId, DeleteTsKvQuery query) {
|
private ListenableFuture<TsKvLatestRemovingResult> getNewLatestEntryFuture(TenantId tenantId, EntityId entityId, DeleteTsKvQuery query, Long version) {
|
||||||
ListenableFuture<List<TsKvEntry>> future = findNewLatestEntryFuture(tenantId, entityId, query);
|
ListenableFuture<List<TsKvEntry>> future = findNewLatestEntryFuture(tenantId, entityId, query);
|
||||||
return Futures.transformAsync(future, entryList -> {
|
return Futures.transformAsync(future, entryList -> {
|
||||||
if (entryList.size() == 1) {
|
if (entryList.size() == 1) {
|
||||||
@ -198,7 +198,7 @@ public class SqlTimeseriesLatestDao extends BaseAbstractSqlTimeseriesDao impleme
|
|||||||
} else {
|
} else {
|
||||||
log.trace("Could not find new latest value for [{}], key - {}", entityId, query.getKey());
|
log.trace("Could not find new latest value for [{}], key - {}", entityId, query.getKey());
|
||||||
}
|
}
|
||||||
return Futures.immediateFuture(new TsKvLatestRemovingResult(query.getKey(), true));
|
return Futures.immediateFuture(new TsKvLatestRemovingResult(query.getKey(), true, version));
|
||||||
}, service);
|
}, service);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -241,7 +241,7 @@ public class SqlTimeseriesLatestDao extends BaseAbstractSqlTimeseriesDao impleme
|
|||||||
rs -> rs.next() ? rs.getLong(1) : null, entityId.getId(), keyDictionaryDao.getOrSaveKeyId(query.getKey())));
|
rs -> rs.next() ? rs.getLong(1) : null, entityId.getId(), keyDictionaryDao.getOrSaveKeyId(query.getKey())));
|
||||||
isRemoved = true;
|
isRemoved = true;
|
||||||
if (query.getRewriteLatestIfDeleted()) {
|
if (query.getRewriteLatestIfDeleted()) {
|
||||||
return getNewLatestEntryFuture(tenantId, entityId, query);
|
return getNewLatestEntryFuture(tenantId, entityId, query, version);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return Futures.immediateFuture(new TsKvLatestRemovingResult(query.getKey(), isRemoved, version));
|
return Futures.immediateFuture(new TsKvLatestRemovingResult(query.getKey(), isRemoved, version));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user