Hi James,

Here is the template.  Need to remove the .txt extension.

Note: I didn't bother to put in the correct flowfile xpath content for the 
processor to evaluate to success result.


Thanks,
Keith





________________________________
From: James Wing <[email protected]>
Sent: Wednesday, June 08, 2016 3:59 PM
To: [email protected]
Subject: Re: Failure when running a workflow created from a template from 
another NiFi version.

Keith,

Would you be able to share your sample template with us as an attachment, a 
GitHub Gist, or something similar?

Thanks,

James

On Wed, Jun 8, 2016 at 3:36 PM, Keith Lim 
<[email protected]<mailto:[email protected]>> wrote:
Hi Joe,

I created a simple workflow with EvaluateXPath and managed to repro the issue.
Here is the snapshot of the screen.  This is on Windows with 0.7.0 snapshot.    
There is no issue on 0.6.1 on Windows and 0.7.0 on Linux.

We can't roll back to 0.6.1 as we have a dependency on a feature in 0.7.0

Thanks,
Keith

[cid:36ee5712-5a4f-45cb-847e-3a9234eb4887]



________________________________________
From: Keith Lim <[email protected]<mailto:[email protected]>>
Sent: Wednesday, June 08, 2016 10:28 AM
To: [email protected]<mailto:[email protected]>
Subject: Re: Failure when running a workflow created from a template from 
another NiFi version.

Hi Joe,

Interesting... I didn't find anything in the nifi-app.log, however, I found 
these logged in the nifi.user.log.

2016-06-08 10:18:22,089 INFO [NiFi Web Server-20] 
org.apache.nifi.web.filter.RequestLogger Attempting request for (anonymous) PUT 
http://nifi.dev.azure.ds-iq.corp:10000/nifi-api/controller/process-groups/658947de-a030-3832-95a6-1f4d2b346131
 (source ip: 10.200.0.31)
2016-06-08 10:18:22,089 INFO [NiFi Web Server-20] 
o.a.n.w.a.c.IllegalStateExceptionMapper java.lang.IllegalStateException: 
EvaluateXPath[id=6c73cffa-0d34-3b25-94d4-14d115b8b62b] is not in a valid state. 
Returning Conflict response.
2016-06-08 10:18:24,636 INFO [NiFi Web Server-18] 
org.apache.nifi.web.filter.RequestLogger Attempting request for (anonymous) GET 
http://nifi.dev.azure.ds-iq.corp:10000/nifi-api/controller (source ip: 
10.200.0.31)
2016-06-08 10:18:25,324 INFO [NiFi Web Server-22] 
org.apache.nifi.web.filter.RequestLogger Attempting request for (anonymous) GET 
http://nifi.dev.azure.ds-iq.corp:10000/nifi-api/controller (source ip: 
10.200.0.31)
2016-06-08 10:18:29,511 INFO [NiFi Web Server-24] 
org.apache.nifi.web.filter.RequestLogger Attempting request for (anonymous) PUT 
http://nifi.dev.azure.ds-iq.corp:10000/nifi-api/controller/process-groups/658947de-a030-3832-95a6-1f4d2b346131
 (source ip: 10.200.0.31)
2016-06-08 10:18:29,542 INFO [NiFi Web Server-24] 
o.a.n.w.a.c.IllegalStateExceptionMapper java.lang.IllegalStateException: 
EvaluateXPath[id=6c73cffa-0d34-3b25-94d4-14d115b8b62b] is not in a valid state. 
Returning Conflict response.


This is the message box I got when I tried to run my workflow:
Node azudevmgmt01.ds-iq.corp:10001 is unable to fulfill this request due to: 
EvaluateXPath[id=6c73cffa-0d34-3b25-94d4-14d115b8b62b] is not in a valid state

Thanks,
Keith

________________________________________
From: Joe Witt <[email protected]<mailto:[email protected]>>
Sent: Wednesday, June 08, 2016 10:02 AM
To: [email protected]<mailto:[email protected]>
Subject: Re: Failure when running a workflow created from a template from 
another NiFi version.

Keith,

Can you collect more information on this from the nifi-app.log?  Not
in valid state should be associated with some exceptions and such that
ideally will be in the logs.

Thanks
Joe

On Wed, Jun 8, 2016 at 1:00 PM, Keith Lim 
<[email protected]<mailto:[email protected]>> wrote:
> Any help on this before while I am upgrading my NiFi to 0.7.0
>
>
> If this is an incompatibility issue between source (where the workflow is
> developed) and target NiFi (where the workflow is imported into and run),
> how is it best to deal with it without having to rewrite in new version?
>
>
> Thanks,
> Keith
>
> ________________________________
>
> From: Keith Lim <[email protected]<mailto:[email protected]>>
> Sent: Tuesday, June 07, 2016 5:07 PM
> To: [email protected]<mailto:[email protected]>
> Subject: Failure when running a workflow created from a template from
> another NiFi version.
>
>
> I am getting a weird error when I ran a workflow created from a template
> exported from another NiFi environment.
>
>
> The source template was developed in NiFi 0.6.1 and I ran it on 0.7.0.
>
>
> The error is
>
> Node <mymachinenode> is unable to fulfill this request due to:
> EvaluateXPath[id=6c73cffa-0d34-3b25-94d4-14d115b8b62b] is not in a valid
> state
>
>
> I went on to delete the processor instance in question and reran, and it
> would complaint the next processor until none is left.  I was wondering this
> is related to upgrade and how is best to fix it without having to re-write
> the whole workflow on the new version?
>
> Thanks,
> Keith
>
>

<?xml version="1.0" encoding="UTF-8" 
standalone="yes"?><template><description></description><name>RepoEvaluateXPathIssueInvalidState</name><snippet><processGroups><id>9da2d61d-48a7-4980-ba42-6277617d5940</id><parentGroupId>be207ea2-434a-4cab-b9d3-0cab3c72f973</parentGroupId><position><x>-342.0648649905846</x><y>377.52112330293426</y></position><activeRemotePortCount>0</activeRemotePortCount><comments></comments><contents><connections><id>5d9b09d9-b422-4acb-adb0-a193331ffb25</id><parentGroupId>9da2d61d-48a7-4980-ba42-6277617d5940</parentGroupId><backPressureDataSizeThreshold>0
 
MB</backPressureDataSizeThreshold><backPressureObjectThreshold>0</backPressureObjectThreshold><destination><groupId>9da2d61d-48a7-4980-ba42-6277617d5940</groupId><id>0b6897b2-a300-4074-a6ec-b4156f47b022</id><type>PROCESSOR</type></destination><flowFileExpiration>0
 
sec</flowFileExpiration><labelIndex>1</labelIndex><name></name><selectedRelationships>failure</selectedRelationships><selectedRelationships>matched</selectedRelationships><selectedRelationships>unmatched</selectedRelationships><source><groupId>9da2d61d-48a7-4980-ba42-6277617d5940</groupId><id>1c05b102-448d-4b22-89c2-b925b0b756ac</id><type>PROCESSOR</type></source><zIndex>0</zIndex></connections><connections><id>e755a7c8-bbbe-48e0-90d7-bbf4c1bc40b5</id><parentGroupId>9da2d61d-48a7-4980-ba42-6277617d5940</parentGroupId><backPressureDataSizeThreshold>0
 
MB</backPressureDataSizeThreshold><backPressureObjectThreshold>0</backPressureObjectThreshold><destination><groupId>9da2d61d-48a7-4980-ba42-6277617d5940</groupId><id>1c05b102-448d-4b22-89c2-b925b0b756ac</id><type>PROCESSOR</type></destination><flowFileExpiration>0
 
sec</flowFileExpiration><labelIndex>1</labelIndex><name></name><selectedRelationships>success</selectedRelationships><source><groupId>9da2d61d-48a7-4980-ba42-6277617d5940</groupId><id>4f832e77-492f-46fe-b353-b586cd3dd1ab</id><type>PROCESSOR</type></source><zIndex>0</zIndex></connections><processors><id>1c05b102-448d-4b22-89c2-b925b0b756ac</id><parentGroupId>9da2d61d-48a7-4980-ba42-6277617d5940</parentGroupId><position><x>849.999984862931</x><y>403.00000513887176</y></position><config><bulletinLevel>WARN</bulletinLevel><comments></comments><concurrentlySchedulableTaskCount>1</concurrentlySchedulableTaskCount><defaultConcurrentTasks><entry><key>TIMER_DRIVEN</key><value>1</value></entry><entry><key>EVENT_DRIVEN</key><value>0</value></entry><entry><key>CRON_DRIVEN</key><value>1</value></entry></defaultConcurrentTasks><defaultSchedulingPeriod><entry><key>TIMER_DRIVEN</key><value>0
 sec</value></entry><entry><key>CRON_DRIVEN</key><value>* * * * * 
?</value></entry></defaultSchedulingPeriod><descriptors><entry><key>Destination</key><value><allowableValues><displayName>flowfile-content</displayName><value>flowfile-content</value></allowableValues><allowableValues><displayName>flowfile-attribute</displayName><value>flowfile-attribute</value></allowableValues><defaultValue>flowfile-content</defaultValue><description>Indicates
 whether the results of the XPath evaluation are written to the FlowFile 
content or a FlowFile attribute; if using attribute, must specify the Attribute 
Name property. If set to flowfile-content, only one XPath may be specified, and 
the property name is 
ignored.</description><displayName>Destination</displayName><dynamic>false</dynamic><name>Destination</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>Return
 
Type</key><value><allowableValues><displayName>auto-detect</displayName><value>auto-detect</value></allowableValues><allowableValues><displayName>nodeset</displayName><value>nodeset</value></allowableValues><allowableValues><displayName>string</displayName><value>string</value></allowableValues><defaultValue>auto-detect</defaultValue><description>Indicates
 the desired return type of the Xpath expressions.  Selecting 'auto-detect' 
will set the return type to 'nodeset' for a Destination of 'flowfile-content', 
and 'string' for a Destination of 
'flowfile-attribute'.</description><displayName>Return 
Type</displayName><dynamic>false</dynamic><name>Return 
Type</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>test</key><value><description></description><displayName>test</displayName><dynamic>true</dynamic><name>test</name><required>false</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry></descriptors><lossTolerant>false</lossTolerant><penaltyDuration>30
 
sec</penaltyDuration><properties><entry><key>Destination</key><value>flowfile-attribute</value></entry><entry><key>Return
 
Type</key></entry><entry><key>test</key><value>/qdbapi/errcode</value></entry></properties><runDurationMillis>0</runDurationMillis><schedulingPeriod>0
 
sec</schedulingPeriod><schedulingStrategy>TIMER_DRIVEN</schedulingStrategy><yieldDuration>1
 
sec</yieldDuration></config><name>EvaluateXPath</name><relationships><autoTerminate>false</autoTerminate><description>FlowFiles
 are routed to this relationship when the XPath cannot be evaluated against the 
content of the FlowFile; for instance, if the FlowFile is not valid XML, or if 
the Return Type is 'nodeset' and the XPath evaluates to multiple 
nodes</description><name>failure</name></relationships><relationships><autoTerminate>false</autoTerminate><description>FlowFiles
 are routed to this relationship when the XPath is successfully evaluated and 
the FlowFile is modified as a 
result</description><name>matched</name></relationships><relationships><autoTerminate>false</autoTerminate><description>FlowFiles
 are routed to this relationship when the XPath does not match the content of 
the FlowFile and the Destination is set to 
flowfile-content</description><name>unmatched</name></relationships><state>STOPPED</state><style/><supportsEventDriven>true</supportsEventDriven><supportsParallelProcessing>true</supportsParallelProcessing><type>org.apache.nifi.processors.standard.EvaluateXPath</type></processors><processors><id>0b6897b2-a300-4074-a6ec-b4156f47b022</id><parentGroupId>9da2d61d-48a7-4980-ba42-6277617d5940</parentGroupId><position><x>882.999984862931</x><y>593.0000051388718</y></position><config><bulletinLevel>WARN</bulletinLevel><comments></comments><concurrentlySchedulableTaskCount>1</concurrentlySchedulableTaskCount><defaultConcurrentTasks><entry><key>TIMER_DRIVEN</key><value>1</value></entry><entry><key>EVENT_DRIVEN</key><value>0</value></entry><entry><key>CRON_DRIVEN</key><value>1</value></entry></defaultConcurrentTasks><defaultSchedulingPeriod><entry><key>TIMER_DRIVEN</key><value>0
 sec</value></entry><entry><key>CRON_DRIVEN</key><value>* * * * * 
?</value></entry></defaultSchedulingPeriod><descriptors><entry><key>Directory</key><value><description>The
 directory to which files should be written. You may use expression language 
such as 
/aa/bb/${path}</description><displayName>Directory</displayName><dynamic>false</dynamic><name>Directory</name><required>true</required><sensitive>false</sensitive><supportsEl>true</supportsEl></value></entry><entry><key>Conflict
 Resolution 
Strategy</key><value><allowableValues><displayName>replace</displayName><value>replace</value></allowableValues><allowableValues><displayName>ignore</displayName><value>ignore</value></allowableValues><allowableValues><displayName>fail</displayName><value>fail</value></allowableValues><defaultValue>fail</defaultValue><description>Indicates
 what should happen when a file with the same name already exists in the output 
directory</description><displayName>Conflict Resolution 
Strategy</displayName><dynamic>false</dynamic><name>Conflict Resolution 
Strategy</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>Create
 Missing 
Directories</key><value><allowableValues><displayName>true</displayName><value>true</value></allowableValues><allowableValues><displayName>false</displayName><value>false</value></allowableValues><defaultValue>true</defaultValue><description>If
 true, then missing destination directories will be created. If false, 
flowfiles are penalized and sent to failure.</description><displayName>Create 
Missing Directories</displayName><dynamic>false</dynamic><name>Create Missing 
Directories</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>Maximum
 File Count</key><value><description>Specifies the maximum number of files that 
can exist in the output directory</description><displayName>Maximum File 
Count</displayName><dynamic>false</dynamic><name>Maximum File 
Count</name><required>false</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>Last
 Modified Time</key><value><description>Sets the lastModifiedTime on the output 
file to the value of this attribute.  Format must be yyyy-MM-dd'T'HH:mm:ssZ.  
You may also use expression language such as 
${file.lastModifiedTime}.</description><displayName>Last Modified 
Time</displayName><dynamic>false</dynamic><name>Last Modified 
Time</name><required>false</required><sensitive>false</sensitive><supportsEl>true</supportsEl></value></entry><entry><key>Permissions</key><value><description>Sets
 the permissions on the output file to the value of this attribute.  Format 
must be either UNIX rwxrwxrwx with a - in place of denied permissions (e.g. 
rw-r--r--) or an octal number (e.g. 644).  You may also use expression language 
such as 
${file.permissions}.</description><displayName>Permissions</displayName><dynamic>false</dynamic><name>Permissions</name><required>false</required><sensitive>false</sensitive><supportsEl>true</supportsEl></value></entry><entry><key>Owner</key><value><description>Sets
 the owner on the output file to the value of this attribute.  You may also use 
expression language such as 
${file.owner}.</description><displayName>Owner</displayName><dynamic>false</dynamic><name>Owner</name><required>false</required><sensitive>false</sensitive><supportsEl>true</supportsEl></value></entry><entry><key>Group</key><value><description>Sets
 the group on the output file to the value of this attribute.  You may also use 
expression language such as 
${file.group}.</description><displayName>Group</displayName><dynamic>false</dynamic><name>Group</name><required>false</required><sensitive>false</sensitive><supportsEl>true</supportsEl></value></entry></descriptors><lossTolerant>false</lossTolerant><penaltyDuration>30
 
sec</penaltyDuration><properties><entry><key>Directory</key><value>C:\temp\test</value></entry><entry><key>Conflict
 Resolution Strategy</key></entry><entry><key>Create Missing 
Directories</key></entry><entry><key>Maximum File 
Count</key></entry><entry><key>Last Modified 
Time</key></entry><entry><key>Permissions</key></entry><entry><key>Owner</key></entry><entry><key>Group</key></entry></properties><runDurationMillis>0</runDurationMillis><schedulingPeriod>0
 
sec</schedulingPeriod><schedulingStrategy>TIMER_DRIVEN</schedulingStrategy><yieldDuration>1
 
sec</yieldDuration></config><name>PutFile</name><relationships><autoTerminate>true</autoTerminate><description>Files
 that could not be written to the output directory for some reason are 
transferred to this 
relationship</description><name>failure</name></relationships><relationships><autoTerminate>true</autoTerminate><description>Files
 that have been successfully written to the output directory are transferred to 
this 
relationship</description><name>success</name></relationships><state>STOPPED</state><style/><supportsEventDriven>false</supportsEventDriven><supportsParallelProcessing>true</supportsParallelProcessing><type>org.apache.nifi.processors.standard.PutFile</type></processors><processors><id>4f832e77-492f-46fe-b353-b586cd3dd1ab</id><parentGroupId>9da2d61d-48a7-4980-ba42-6277617d5940</parentGroupId><position><x>821.999984862931</x><y>200.00000513887176</y></position><config><bulletinLevel>WARN</bulletinLevel><comments></comments><concurrentlySchedulableTaskCount>1</concurrentlySchedulableTaskCount><defaultConcurrentTasks><entry><key>TIMER_DRIVEN</key><value>1</value></entry><entry><key>EVENT_DRIVEN</key><value>0</value></entry><entry><key>CRON_DRIVEN</key><value>1</value></entry></defaultConcurrentTasks><defaultSchedulingPeriod><entry><key>TIMER_DRIVEN</key><value>0
 sec</value></entry><entry><key>CRON_DRIVEN</key><value>* * * * * 
?</value></entry></defaultSchedulingPeriod><descriptors><entry><key>File 
Size</key><value><description>The size of the file that will be 
used</description><displayName>File 
Size</displayName><dynamic>false</dynamic><name>File 
Size</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>Batch
 Size</key><value><defaultValue>1</defaultValue><description>The number of 
FlowFiles to be transferred in each invocation</description><displayName>Batch 
Size</displayName><dynamic>false</dynamic><name>Batch 
Size</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>Data
 
Format</key><value><allowableValues><displayName>Binary</displayName><value>Binary</value></allowableValues><allowableValues><displayName>Text</displayName><value>Text</value></allowableValues><defaultValue>Binary</defaultValue><description>Specifies
 whether the data should be Text or Binary</description><displayName>Data 
Format</displayName><dynamic>false</dynamic><name>Data 
Format</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry><entry><key>Unique
 
FlowFiles</key><value><allowableValues><displayName>true</displayName><value>true</value></allowableValues><allowableValues><displayName>false</displayName><value>false</value></allowableValues><defaultValue>false</defaultValue><description>If
 true, each FlowFile that is generated will be unique. If false, a random value 
will be generated and all FlowFiles will get the same content but this offers 
much higher throughput</description><displayName>Unique 
FlowFiles</displayName><dynamic>false</dynamic><name>Unique 
FlowFiles</name><required>true</required><sensitive>false</sensitive><supportsEl>false</supportsEl></value></entry></descriptors><lossTolerant>false</lossTolerant><penaltyDuration>30
 sec</penaltyDuration><properties><entry><key>File Size</key><value>1 
B</value></entry><entry><key>Batch Size</key></entry><entry><key>Data 
Format</key><value>Text</value></entry><entry><key>Unique 
FlowFiles</key></entry></properties><runDurationMillis>0</runDurationMillis><schedulingPeriod>0
 
sec</schedulingPeriod><schedulingStrategy>TIMER_DRIVEN</schedulingStrategy><yieldDuration>1
 
sec</yieldDuration></config><name>GenerateFlowFile</name><relationships><autoTerminate>false</autoTerminate><description></description><name>success</name></relationships><state>STOPPED</state><style/><supportsEventDriven>false</supportsEventDriven><supportsParallelProcessing>true</supportsParallelProcessing><type>org.apache.nifi.processors.standard.GenerateFlowFile</type></processors></contents><disabledCount>0</disabledCount><inactiveRemotePortCount>0</inactiveRemotePortCount><inputPortCount>0</inputPortCount><invalidCount>1</invalidCount><name>Repro
 Issue for 
EvaluateXPath</name><outputPortCount>0</outputPortCount><parent><id>be207ea2-434a-4cab-b9d3-0cab3c72f973</id><name>Test</name><parent><id>8c867ac9-8563-4768-97a4-caebf858d0d1</id><name>Data
 Source Name S - 
Z</name><parent><id>5922e4b2-2fec-4f81-82b9-0b72129ff93f</id><name>NiFi 
Flow</name></parent></parent></parent><runningCount>0</runningCount><stoppedCount>2</stoppedCount></processGroups></snippet><timestamp>06/08/2016
 16:06:46 PDT</timestamp></template>

Reply via email to