This is an automated email from the ASF dual-hosted git repository. gosonzhang pushed a commit to branch TUBEMQ-570 in repository https://gitbox.apache.org/repos/asf/incubator-inlong.git
commit ee98d30486a114e4ed8fd507c8dce875c216645e Author: gosonzhang <[email protected]> AuthorDate: Wed May 26 20:28:16 2021 +0800 [INLONG-618] Add unit tests for metastore.dao.entity.* --- .../metamanage/metastore/dao/entity/BaseEntity.java | 17 ++++++++--------- .../metamanage/metastore/dao/entity/BaseEntityTest.java | 5 +++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java index b964b96..24e97a8 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java @@ -34,7 +34,7 @@ public class BaseEntity implements Serializable, Cloneable { private long dataVersionId = TBaseConstants.META_VALUE_UNDEFINED; // -2: undefined, other: version - private final AtomicLong serialId = + private AtomicLong serialId = new AtomicLong(TBaseConstants.META_VALUE_UNDEFINED); private String createUser = ""; // create user private Date createDate = null; // create date @@ -165,12 +165,7 @@ public class BaseEntity implements Serializable, Cloneable { } protected void updSerialId() { - if (serialId.get() == TBaseConstants.META_VALUE_UNDEFINED) { - this.serialId.set(System.currentTimeMillis()); - } else { - this.serialId.incrementAndGet(); - } - + this.serialId.set(System.currentTimeMillis()); } public String getModifyUser() { @@ -283,9 +278,13 @@ public class BaseEntity implements Serializable, Cloneable { } @Override - public Object clone() { + public BaseEntity clone() { try { - return super.clone(); + BaseEntity copy = (BaseEntity) super.clone(); + if (copy != null) { + copy.serialId = new AtomicLong(this.serialId.get()); + } + return copy; } catch (Throwable e) { return null; } diff --git a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntityTest.java b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntityTest.java index 417a613..b71f1cd 100644 --- a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntityTest.java +++ b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntityTest.java @@ -136,11 +136,12 @@ public class BaseEntityTest { Assert.assertEquals(baseEntity8.getCreateDateStr(), ""); Assert.assertEquals(baseEntity8.getModifyDateStr(), ""); // case 9 - BaseEntity baseEntity9 = (BaseEntity) baseEntity6.clone(); + BaseEntity baseEntity9 = baseEntity6.clone(); Assert.assertEquals(baseEntity9, baseEntity6); - baseEntity9.setAttributes("aaaaabbbbccccddd"); ThreadUtils.sleep(2000); baseEntity9.updSerialId(); + baseEntity9.setDataVersionId(222223333); + baseEntity9.setAttributes("aaaaabbbbccccddd"); baseEntity9.updQueryKeyInfo(newDataVerId, newCreateUser, newModifyUser); Assert.assertNotEquals(baseEntity6.getDataVerId(), baseEntity9.getDataVerId()); Assert.assertNotEquals(baseEntity6.getSerialId(), baseEntity9.getSerialId());
