[
https://issues.apache.org/jira/browse/NIFI-6721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17025476#comment-17025476
]
Joey Frazee commented on NIFI-6721:
-----------------------------------
Looks like the source of the mistake is that the Spring JmsTemplate doesn't
actually have a setExpiration() so as you're seeing, the value got used with
setTimeToLive():
https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-jms-bundle/nifi-jms-processors/src/main/java/org/apache/nifi/jms/processors/JMSPublisher.java#L85
> jms_expiration attribute problem
> --------------------------------
>
> Key: NIFI-6721
> URL: https://issues.apache.org/jira/browse/NIFI-6721
> Project: Apache NiFi
> Issue Type: Bug
> Components: Extensions
> Affects Versions: 1.8.0
> Environment: Linux CENTOS 7
> Reporter: Tim Chermak
> Priority: Minor
>
> The documentation for PublishJMS indicates the JMSExpiration is set with the
> attribute jms_expiration. However, this value is really the time-to-live
> (ttl) in milliseconds. The JMSExpiration is calculated by the provider
> library as "expiration = timestamp + ttl"
> So, this NiFi flowfile attribute should really be named jms_ttl. The current
> setup works correctly when NiFi creates and publishes a message, but has
> problems when you try to republish a JMS message.
> GetFile -> UpdateAttibute -> PublishJMS creates a valid JMSExpiration in the
> message, however, when a JMS has the expiration set, ConsumeJMS -> PublishJMS
> shows an error in the nifi.--app.log file:
> "o.apache.nifi.jms.processors.PublishJMS PublishJMS[id=016b1005-xxxxxx...]
> Incompatible value for attribute jms_expiration [1566428032803] is not a
> number. Ignoring this attribute."
> Looks like ConsumeJMS set the flowfile attribute to the expiration value
> rather than the time-ti-live value. Time-to-live should be jms_ttl =
> expiration - current_time.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)