gemmellr commented on a change in pull request #30: QPIDJMS-461 Optimize the 
default message ID builder
URL: https://github.com/apache/qpid-jms/pull/30#discussion_r294693257
 
 

 ##########
 File path: 
qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsMessageIDBuilder.java
 ##########
 @@ -30,15 +30,34 @@
         DEFAULT {
             @Override
             public JmsMessageIDBuilder createBuilder() {
+
+                /**
+                 * The default builder is meant to be used as a single 
instance per producer
+                 * and will yield incorrect results if used across multiple 
producer instances.
+                 */
                 return new JmsMessageIDBuilder() {
 
+                    private final StringBuilder builder = new StringBuilder();
+                    private int idPrefixLength = 0;
+
                     @Override
                     public Object createMessageID(String producerId, long 
messageSequence) {
-                        String messageId = producerId + "-" + messageSequence;
-                        if 
(!AmqpMessageIdHelper.hasMessageIdPrefix(messageId)) {
-                            messageId = AmqpMessageIdHelper.JMS_ID_PREFIX + 
messageId;
+                        builder.setLength(idPrefixLength);
 
 Review comment:
   Should perhaps verify that it was actually initialised, and if not then 
throw or do so now?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to