[
https://issues.apache.org/jira/browse/NIFI-5196?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16547935#comment-16547935
]
ASF GitHub Bot commented on NIFI-5196:
--------------------------------------
Github user mosermw commented on the issue:
https://github.com/apache/nifi/pull/2904
Thank you @pvillard31, I appreciate your time to merge this.
> AbstractJMSProcessor can leave connection hanging open
> ------------------------------------------------------
>
> Key: NIFI-5196
> URL: https://issues.apache.org/jira/browse/NIFI-5196
> Project: Apache NiFi
> Issue Type: Bug
> Components: Extensions
> Affects Versions: 1.6.0
> Reporter: Nick Coleman
> Assignee: Michael Moser
> Priority: Major
> Labels: JMS
> Fix For: 1.8.0
>
>
> ConsumeJMS and PublishJMS are based on AbstractJMSProcessor. They can cause
> a connection to the MQ Server to be opened and not be closed until the NiFi
> server is rebooted.
> This can create a problem for an MQ when the initial setup entered is wrong
> for an IBM MQ system that only allows one connection per user. Subsequent
> connections are blocked as the first remains open. Another potential problem
> even if the subsequent connection works is the original connection is still
> open and taking up resources.
> A simple change to the AbstractJMSProcessor would be in the onTrigger()
> function:
>
> {code:java}
> @Override
> public void onTrigger(ProcessContext context, ProcessSession session) throws
> ProcessException {
> T worker = workerPool.poll();
> if (worker == null) {
> worker = buildTargetResource(context);
> }
> boolean offered = false;
> try {
> rendezvousWithJms(context, session, worker);
> offered = workerPool.offer(worker);
> }
> finally {
> if (!offered) {
> worker.shutdown();
> }
> }
> }{code}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)