[
https://issues.apache.org/jira/browse/KYLIN-5308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17640569#comment-17640569
]
ASF GitHub Bot commented on KYLIN-5308:
---------------------------------------
hit-lacus commented on code in PR #2039:
URL: https://github.com/apache/kylin/pull/2039#discussion_r1034515304
##########
src/core-common/src/test/java/org/apache/kylin/common/persistence/metadata/AbstractEpochStoreTest.java:
##########
@@ -0,0 +1,160 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.common.persistence.metadata;
+
+import static org.apache.kylin.common.util.TestUtils.getTestConfig;
+
+import java.util.Arrays;
+import java.util.Objects;
+
+import org.apache.kylin.common.util.AddressUtil;
+import org.apache.kylin.junit.annotation.MetadataInfo;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+import com.google.common.collect.Lists;
+
+import lombok.val;
+
+@MetadataInfo(onlyProps = true)
+public abstract class AbstractEpochStoreTest {
Review Comment:
Is it a really new file?
> The old transaction is not interrupted when Epoch renew retry
> -------------------------------------------------------------
>
> Key: KYLIN-5308
> URL: https://issues.apache.org/jira/browse/KYLIN-5308
> Project: Kylin
> Issue Type: Bug
> Reporter: Jiale He
> Assignee: Jiale He
> Priority: Critical
> Fix For: 5.0-alpha
>
> Attachments: KYLIN-5308 Epoch Renew 事务超时 Design.pdf,
> image-2022-11-28-16-32-00-356.png, image-2022-11-29-14-29-31-681.png
>
>
> kylin fails to write data to the new transaction because the old transaction
> is not interrupted during the Renew Epoch Retry. As a result, Kylin loses the
> epoch.
>
> When Epoch Renew occurs, the write to the database times out and tries again.
> As the old transaction is not rolled back during the retry, the old
> transaction is successfully written to the database and MVCC+1 occurs. When a
> new transaction writes to the database, it will check the MVCC. If the
> detection fails, kylin will think that the Epoch is lost.
> !image-2022-11-28-16-32-00-356.png!
>
> See attachment for RC and Fix Design: `KYLIN-5308 Epoch Renew 事务超时
> Design.pdf`
>
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)