This is an automated email from the ASF dual-hosted git repository.

jbonofre pushed a commit to branch activemq-5.15.x
in repository https://gitbox.apache.org/repos/asf/activemq.git


The following commit(s) were added to refs/heads/activemq-5.15.x by this push:
     new fef5b07  [AMQ-7394] Simple first fix to use listener.hasSpace() when 
recovering message from JDBC message store
fef5b07 is described below

commit fef5b079868979ee40762c611a977f5f6d0cc6f1
Author: jbonofre <[email protected]>
AuthorDate: Tue Mar 3 06:20:51 2020 +0100

    [AMQ-7394] Simple first fix to use listener.hasSpace() when recovering 
message from JDBC message store
    
    (cherry picked from commit dcd3d5db3f14fbdb74d9595360033988405cce79)
---
 .../main/java/org/apache/activemq/store/jdbc/JDBCMessageStore.java  | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git 
a/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/JDBCMessageStore.java
 
b/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/JDBCMessageStore.java
index 29db04c..9435e5b 100644
--- 
a/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/JDBCMessageStore.java
+++ 
b/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/JDBCMessageStore.java
@@ -360,12 +360,16 @@ public class JDBCMessageStore extends 
AbstractMessageStore {
 
                 @Override
                 public boolean recoverMessage(long sequenceId, byte[] data) 
throws Exception {
-                        Message msg = (Message)wireFormat.unmarshal(new 
ByteSequence(data));
+                    if (listener.hasSpace()) {
+                        Message msg = (Message) wireFormat.unmarshal(new 
ByteSequence(data));
                         msg.getMessageId().setBrokerSequenceId(sequenceId);
                         msg.getMessageId().setFutureOrSequenceLong(sequenceId);
                         listener.recoverMessage(msg);
                         trackLastRecovered(sequenceId, msg.getPriority());
                         return true;
+                    } else {
+                        return false;
+                    }
                 }
 
                 @Override

Reply via email to