From 36103ef01c76848c7eedd93894f51bcab583058a Mon Sep 17 00:00:00 2001 From: Volodymyr Babak Date: Wed, 22 Dec 2021 17:38:12 +0200 Subject: [PATCH] Edge events must be sorted by ID as last sort --- .../thingsboard/server/dao/sql/edge/JpaBaseEdgeEventDao.java | 2 +- .../server/dao/service/BaseEdgeEventServiceTest.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/edge/JpaBaseEdgeEventDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/edge/JpaBaseEdgeEventDao.java index 8645efccf7..e5883c20ab 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/edge/JpaBaseEdgeEventDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/edge/JpaBaseEdgeEventDao.java @@ -100,10 +100,10 @@ public class JpaBaseEdgeEventDao extends JpaAbstractSearchTextDao findEdgeEvents(UUID tenantId, EdgeId edgeId, TimePageLink pageLink, boolean withTsUpdate) { List sortOrders = new ArrayList<>(); - sortOrders.add(new SortOrder("id", SortOrder.Direction.ASC)); if (pageLink.getSortOrder() != null) { sortOrders.add(pageLink.getSortOrder()); } + sortOrders.add(new SortOrder(DaoUtil.DEFAULT_SORT_PROPERTY, SortOrder.Direction.ASC)); final Lock readWriteLock = readWriteLocks.computeIfAbsent(edgeId, id -> new ReentrantLock()); readWriteLock.lock(); try { diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/BaseEdgeEventServiceTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseEdgeEventServiceTest.java index 7c86e38eec..51a4975dcd 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/BaseEdgeEventServiceTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseEdgeEventServiceTest.java @@ -106,7 +106,7 @@ public abstract class BaseEdgeEventServiceTest extends AbstractServiceTest { EdgeId edgeId = new EdgeId(Uuids.timeBased()); DeviceId deviceId = new DeviceId(Uuids.timeBased()); TenantId tenantId = new TenantId(Uuids.timeBased()); - TimePageLink pageLink = new TimePageLink(1); + TimePageLink pageLink = new TimePageLink(1, 0, null, new SortOrder("createdTime", SortOrder.Direction.ASC)); EdgeEvent edgeEventWithTsUpdate = generateEdgeEvent(tenantId, edgeId, deviceId, EdgeEventActionType.TIMESERIES_UPDATED); edgeEventService.save(edgeEventWithTsUpdate);