nifi-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Harper (JIRA)" <>
Subject [jira] [Created] (NIFI-1686) NiFi is unable to populate over 1/4 of AMQP properties from flow properties
Date Thu, 24 Mar 2016 18:52:25 GMT
Stephen Harper created NIFI-1686:

             Summary: NiFi is unable to populate over 1/4 of AMQP properties from flow properties
                 Key: NIFI-1686
             Project: Apache NiFi
          Issue Type: Bug
          Components: Core Framework
    Affects Versions: 0.5.1
            Reporter: Stephen Harper

When creating a flow (we used ListenHTTP, but this bug will affect all) that forwards on to
a rabbit queue, org.apache.nifi.amqp.processors.PublishAMQP uses the method extractAmqpPropertiesFromFlowFile
to populate the AMQP BasicProperties if the flow attributes match a certain format (i.e amqp$contentType=text/xml).

The method in question uses reflection to find a matching method name from the AMQP.BasicProperties
class, and tries to populate accordingly.

This works fine for all properties that take a String argument - however there are some that
don't (specifically, headers takes a Map<String, Object>, deliveryMode and priority
take Integer, and timestamp takes a Date), and it is impossible to populate these values because
the invocation assumes a String is required, and fails on line 210.

Whatsmore, the comment underneath (line 215) states that "this should really never happen
since it should be caught by the above IF" - however the author of the code mustn't have tested
all cases because this error is consistently present when trying to forward flow attributes
in over a quarter of the available amqp properties.

This message was sent by Atlassian JIRA

View raw message