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