You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by cl...@apache.org on 2018/08/27 12:16:01 UTC

[2/2] activemq-artemis git commit: ARTEMIS-2056 Set write position on JDBCFile copy

ARTEMIS-2056 Set write position on JDBCFile copy

(cherry picked from commit b36a1058d4584adca399a591c4109866d4265e07)


Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/dc2e4dd5
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/dc2e4dd5
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/dc2e4dd5

Branch: refs/heads/2.6.x
Commit: dc2e4dd54695d7af349fa754f9212e48adebceca
Parents: f2d26dc
Author: Martyn Taylor <mt...@redhat.com>
Authored: Fri Aug 24 14:24:25 2018 +0100
Committer: Clebert Suconic <cl...@apache.org>
Committed: Mon Aug 27 08:15:54 2018 -0400

----------------------------------------------------------------------
 .../activemq/artemis/jdbc/store/file/JDBCSequentialFile.java   | 6 ++++++
 .../artemis/jdbc/file/JDBCSequentialFileFactoryTest.java       | 3 +++
 2 files changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/dc2e4dd5/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCSequentialFile.java
----------------------------------------------------------------------
diff --git a/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCSequentialFile.java b/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCSequentialFile.java
index 843be54..fec8eaf 100644
--- a/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCSequentialFile.java
+++ b/artemis-jdbc-store/src/main/java/org/apache/activemq/artemis/jdbc/store/file/JDBCSequentialFile.java
@@ -330,6 +330,7 @@ public class JDBCSequentialFile implements SequentialFile {
    public SequentialFile cloneFile() {
       try {
          JDBCSequentialFile clone = new JDBCSequentialFile(fileFactory, filename, executor, dbDriver, writeLock);
+         clone.setWritePosition(this.writePosition);
          return clone;
       } catch (Exception e) {
          fileFactory.onIOError(e, "Error cloning JDBC file.", this);
@@ -342,8 +343,13 @@ public class JDBCSequentialFile implements SequentialFile {
       JDBCSequentialFile clone = (JDBCSequentialFile) cloneFile;
       try {
          synchronized (writeLock) {
+            if (logger.isTraceEnabled()) {
+               logger.trace("JDBC Copying File.  From: " + this + " To: " + cloneFile);
+            }
+
             clone.open();
             dbDriver.copyFileData(this, clone);
+            clone.setWritePosition(writePosition);
          }
       } catch (Exception e) {
          fileFactory.onIOError(e, "Error copying JDBC file.", this);

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/dc2e4dd5/artemis-jdbc-store/src/test/java/org/apache/activemq/artemis/jdbc/file/JDBCSequentialFileFactoryTest.java
----------------------------------------------------------------------
diff --git a/artemis-jdbc-store/src/test/java/org/apache/activemq/artemis/jdbc/file/JDBCSequentialFileFactoryTest.java b/artemis-jdbc-store/src/test/java/org/apache/activemq/artemis/jdbc/file/JDBCSequentialFileFactoryTest.java
index d567f84..a45b9a8 100644
--- a/artemis-jdbc-store/src/test/java/org/apache/activemq/artemis/jdbc/file/JDBCSequentialFileFactoryTest.java
+++ b/artemis-jdbc-store/src/test/java/org/apache/activemq/artemis/jdbc/file/JDBCSequentialFileFactoryTest.java
@@ -221,6 +221,9 @@ public class JDBCSequentialFileFactoryTest {
 
       checkData(file, src);
       checkData(copy, src);
+
+      assertEquals(bufferSize, copy.size());
+      assertEquals(bufferSize, file.size());
    }
 
    @Test