[ 
https://issues.apache.org/jira/browse/NIFI-5029?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16655013#comment-16655013
 ] 

Olivier Tarnus commented on NIFI-5029:
--------------------------------------

I'm actually facing the same error message, but in slightly different context: 
copying flows between two registries.

I've a DEV and PROD registries and wrote a simple script using NiPyApi to 
synchronize flow versions from DEV to PROD. This works perfectly until we add 
embedded process groups to version control:

We have one main process group A, that embed multiple process groups B,C,D... 
all process groups versions being stored in the same bucket. Any NiFi instance 
connected to the DEV registry can successfully import the flows. Then we can 
successfully copy the flows to the PROD registry, but we hit the above error 
when importing the flow initially.

I tried to first first add A to version control with all embedded process 
groups not versioned: we can then successfully import the process after a copy. 
Then I started version control on embedded process groups, successfully synced 
registries, but it does fail with the same error when trying to import the new 
version after the copy.

This is not 100% the case described here (no copy and 2 buckets), but I think 
this is related to same area of code. Let me know if I should create a separate 
improvement requests.

> CLI - Handling of embedded versioned process groups during export/import
> ------------------------------------------------------------------------
>
>                 Key: NIFI-5029
>                 URL: https://issues.apache.org/jira/browse/NIFI-5029
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Flow Versioning, SDLC, Tools and Build
>            Reporter: Pierre Villard
>            Priority: Major
>
> I'm in a situation where, in my dev environment, I have a versioned process 
> group A in bucket bA containing an embedded process group B from bucket bB. 
> Both A and B are versioned in the NiFi Registry of my dev environment.
> I'm using the CLI to export both A and B from my dev Registry, and then 
> importing A and B in my prod Registry. The issue is that in the json 
> representing A, there is a reference to B containing the url of the dev 
> Registry, the bucket ID and the workflow ID representing B.
> To import B in my prod registry, I first created a bucket bB and a workflow 
> B. New UUIDs have been generated for both in the prod registry. Then I did 
> the import of the JSON representing B.
> Now I manually update the JSON representing A to set the UUIDs related to B 
> with the new values of my prod registry. Then I created a bucket and a 
> workflow for A in my prod registry, and did the import.
> Problem occurs when I try to import the process group A in my prod NiFi. 
> It'll fail with an error looking like this:
> {code:java}
> #> nifi pg-change-version -fv 2 -pgid &1 -u http://localhost:8080
> > Using a positional back-reference for 'A'
> ERROR: Error executing command 'pg-change-version' : Error updating version 
> control information: The Flow Registry with ID 
> 56a49113-0162-1000-0a7e-4959d312d445 reports that no Flow exists with Bucket 
> 9d87ccc4-7084-4069-850a-7704135ea9e9, Flow 
> 7e47aeba-4908-41a6-88d7-e6deb1abef98, Version 2{code}
> I guess there are multiple ways of handling it. It could be on the CLI side 
> or on the Registry side (could be related to NIFIREG-148).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to