well, before submitting issue, I'd like to ask if there's already a possibility to configure that way. ok, got your point, will open a request
2018-04-04 17:29 GMT+05:00 Tim Bain <tb...@alumni.duke.edu>: > If you think that message expiration should be checked when the publisher > publishes the message, you can submit an enhancement request in JIRA for > it. > > Tim > > On Tue, Apr 3, 2018, 11:15 PM Илья Шипицин <chipits...@gmail.com> wrote: > > > Tim, thank you for your investigation (looks like our client is buggy, > > we'll look at it). > > besides that, doesn't it look strange, accept message and drop it right > > away ? is there a possibility to reject such messages ? > > it will inform client in a better way > > > > 2018-04-04 9:12 GMT+05:00 Tim Bain <tb...@alumni.duke.edu>: > > > > > Ilya, > > > > > > The output you're seeing is from the message as it's being put onto the > > > DLQ. (destination=queue://DLQ.EdiInbound") This means that it has > already > > > passed through the set of transformations that occur in > > > orc.apache.activemq.broker.region.RegionBroker.sendToDeadLetterQueue() > > and > > > RegionBroker.stampAsExpired(), which set the originalExpiration > property > > to > > > the value of expiration on the original message and then set expiration > > to > > > the DLQ's expiration value (i.e. 0). > > > > > > What that means is that although you think you've set expiration to 0, > > you > > > haven't successfully done that; you can see from both the > > > originalExpiration property and the message of the Throwable in the > > > dlqDeliveryFailureCause that the message's expiration value was > > > 1522739054119, > > > which is why this message got expired to the DLQ. > > > > > > So if you're attempting to disable message expiration for this message, > > you > > > need to look at how you're doing that to figure out what you're doing > > > that's not properly configured. > > > http://activemq.apache.org/how-do-i-set-the-message-expiration.html > > might > > > be relevant, if you haven't already seen it. > > > > > > Tim > > > > > > On Tue, Apr 3, 2018 at 7:22 AM, Илья Шипицин <chipits...@gmail.com> > > wrote: > > > > > > > hello, > > > > > > > > activemq.log:2018-04-03 10:42:57,961 | INFO | preProcessDispatch: > > > > MessageDispatch {commandId = 0, responseRequired = false, consumerId > = > > > > ID:dd-amq-app01. > > > > sd.kontur.ru-32887-1522738593874-4:1:1:1, destination = > > > > queue://DLQ.EdiInbound, message = ActiveMQTextMessage {commandId = 5, > > > > responseRequired = true, mes > > > > sageId = ID:vm-dc-test8-50009-636572273611169908-4:1826:1:1:1, > > > > originalDestination = queue://EdiInbound, originalTransactionId = > null, > > > > producerId = ID:vm- > > > > dc-test8-50009-636572273611169908-4:1826:1:1, destination = > > > > queue://DLQ.EdiInbound, transactionId = null, expiration = 0, > > timestamp = > > > > 1522739053119, arriv > > > > al = 0, brokerInTime = 1522739055628, brokerOutTime = 1522739053126, > > > > correlationId = null, replyTo = null, persistent = true, type = null, > > > > priority = 4, g > > > > roupID = null, groupSequence = 0, targetConsumerId = null, > compressed = > > > > false, userID = null, content = > > > > org.apache.activemq.util.ByteSequence@552349c1, ma > > > > rshalledProperties = null, dataStructure = null, redeliveryCounter = > 0, > > > > size = 1263, properties = {originalExpiration=1522739054119, > > > > EDI_CORRELATION_ID=21 > > > > 008, EDI_FILE_NAME=15.xml, EDI_DOC_TYPE=EDI_DOC_TYPE, > > > > BrokerPath=localhost,localhost, > > > > dlqDeliveryFailureCause=java.lang.Throwable: Message Expired. Expira > > > > tion:1522739054119}, readOnlyProperties = false, readOnlyBody = > false, > > > > droppable = false, jmsXGroupFirstForConsumer = false, text = <?xml > > > > version="1.0" en > > > > coding="UTF-8"?> > > > > > > > > > > > > as I can see, "originalDestination = queue://EdiInbound" - so, we > tried > > > to > > > > deliver to EdiInbound > > > > expiration is 0 (we did not set it, it's default): expiration = 0 > > > > > > > > as we can see, message was expired and delivered to DLQ. it was not > > > > intended behaviour. > > > > also, documentation states that expiration = 0 means "no expiration" > > > > > > > > > > > > please, explain me. I do not understand how expiration=0 lead to DLQ > > > > actually. > > > > > > > > configuration is pretty generic, nothing special. I'll provide > > > > configuration if needed (also, from documentation I read that > > > expiration=0 > > > > is not configuration dependent) > > > > > > > > we run 5.15.3 > > > > > > > > cheers, > > > > Ilya Shipitsin > > > > > > > > > >