[jira] [Commented] (NIFI-5222) With validation being performed asynchronously, updating a processor causes validation to occur 3 times instead of once
[ https://issues.apache.org/jira/browse/NIFI-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16491183#comment-16491183 ] ASF subversion and git services commented on NIFI-5222: --- Commit eb0b4283e800636b8722fadfebce34e3df094196 in nifi's branch refs/heads/master from [~markap14] [ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=eb0b428 ] NIFI-5222: Prevent validating components multiple times for each update - Avoid triggering async validation for each update to component when instantiating a template (such as copy/paste or templates). Added debug logging to indicate when and why we are triggering validation; removed unit test that made poor assumptions about the inner workings of the FlowSynchronizer that resulted in failures when we make calls into processors that the unit test doesn't know about" This closes #2731. > With validation being performed asynchronously, updating a processor causes > validation to occur 3 times instead of once > --- > > Key: NIFI-5222 > URL: https://issues.apache.org/jira/browse/NIFI-5222 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.7.0 >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.7.0 > > > With the merge of NIFI-950, we now have processors, controller services, and > reporting tasks being validated asynchronously. Each time that properties, > annotation data, or auto-terminated relationships are set, a task is kicked > off in the background to perform validation. Additionally, if any connections > are added/removed, it kicks off the task. > Right now, though, if a user clicks to configure a processor and then clicks > Apply, what happens on the back end is that we call setProperties(), > setAnnotationData(), and setAutoTerminatedRelationships() in the request. As > a result, we kick off validation 3 times. Instead, we should avoid kicking > off that background task until we've completed all updates to the > processor/controller service/reporting task. Then trigger validation only > once. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5222) With validation being performed asynchronously, updating a processor causes validation to occur 3 times instead of once
[ https://issues.apache.org/jira/browse/NIFI-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16491185#comment-16491185 ] ASF GitHub Bot commented on NIFI-5222: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/2731 > With validation being performed asynchronously, updating a processor causes > validation to occur 3 times instead of once > --- > > Key: NIFI-5222 > URL: https://issues.apache.org/jira/browse/NIFI-5222 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.7.0 >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.7.0 > > > With the merge of NIFI-950, we now have processors, controller services, and > reporting tasks being validated asynchronously. Each time that properties, > annotation data, or auto-terminated relationships are set, a task is kicked > off in the background to perform validation. Additionally, if any connections > are added/removed, it kicks off the task. > Right now, though, if a user clicks to configure a processor and then clicks > Apply, what happens on the back end is that we call setProperties(), > setAnnotationData(), and setAutoTerminatedRelationships() in the request. As > a result, we kick off validation 3 times. Instead, we should avoid kicking > off that background task until we've completed all updates to the > processor/controller service/reporting task. Then trigger validation only > once. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5222) With validation being performed asynchronously, updating a processor causes validation to occur 3 times instead of once
[ https://issues.apache.org/jira/browse/NIFI-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16491184#comment-16491184 ] Mark Payne commented on NIFI-5222: -- [~joewitt] thanks! Merged to master. > With validation being performed asynchronously, updating a processor causes > validation to occur 3 times instead of once > --- > > Key: NIFI-5222 > URL: https://issues.apache.org/jira/browse/NIFI-5222 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.7.0 >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.7.0 > > > With the merge of NIFI-950, we now have processors, controller services, and > reporting tasks being validated asynchronously. Each time that properties, > annotation data, or auto-terminated relationships are set, a task is kicked > off in the background to perform validation. Additionally, if any connections > are added/removed, it kicks off the task. > Right now, though, if a user clicks to configure a processor and then clicks > Apply, what happens on the back end is that we call setProperties(), > setAnnotationData(), and setAutoTerminatedRelationships() in the request. As > a result, we kick off validation 3 times. Instead, we should avoid kicking > off that background task until we've completed all updates to the > processor/controller service/reporting task. Then trigger validation only > once. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5222) With validation being performed asynchronously, updating a processor causes validation to occur 3 times instead of once
[ https://issues.apache.org/jira/browse/NIFI-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16491064#comment-16491064 ] Joseph Witt commented on NIFI-5222: --- thanks [~markap14]. Had a chance to review and test yesterday. Much better and feels like it used to. +1 - can you do the merge and close out please > With validation being performed asynchronously, updating a processor causes > validation to occur 3 times instead of once > --- > > Key: NIFI-5222 > URL: https://issues.apache.org/jira/browse/NIFI-5222 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.7.0 >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.7.0 > > > With the merge of NIFI-950, we now have processors, controller services, and > reporting tasks being validated asynchronously. Each time that properties, > annotation data, or auto-terminated relationships are set, a task is kicked > off in the background to perform validation. Additionally, if any connections > are added/removed, it kicks off the task. > Right now, though, if a user clicks to configure a processor and then clicks > Apply, what happens on the back end is that we call setProperties(), > setAnnotationData(), and setAutoTerminatedRelationships() in the request. As > a result, we kick off validation 3 times. Instead, we should avoid kicking > off that background task until we've completed all updates to the > processor/controller service/reporting task. Then trigger validation only > once. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5222) With validation being performed asynchronously, updating a processor causes validation to occur 3 times instead of once
[ https://issues.apache.org/jira/browse/NIFI-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16487537#comment-16487537 ] Mark Payne commented on NIFI-5222: -- [~joewitt] I have pushed another commit that I think will address all of your issues. The approach here I believe is correct, but there were a few places where I still was not properly waiting until the end to perform validation. As a result, we were causing a lot of background tasks for validation to occur. Specifically, when you copy & paste components (or instantiated templates) we were still causing a lot of validation. > With validation being performed asynchronously, updating a processor causes > validation to occur 3 times instead of once > --- > > Key: NIFI-5222 > URL: https://issues.apache.org/jira/browse/NIFI-5222 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.7.0 >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.7.0 > > > With the merge of NIFI-950, we now have processors, controller services, and > reporting tasks being validated asynchronously. Each time that properties, > annotation data, or auto-terminated relationships are set, a task is kicked > off in the background to perform validation. Additionally, if any connections > are added/removed, it kicks off the task. > Right now, though, if a user clicks to configure a processor and then clicks > Apply, what happens on the back end is that we call setProperties(), > setAnnotationData(), and setAutoTerminatedRelationships() in the request. As > a result, we kick off validation 3 times. Instead, we should avoid kicking > off that background task until we've completed all updates to the > processor/controller service/reporting task. Then trigger validation only > once. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5222) With validation being performed asynchronously, updating a processor causes validation to occur 3 times instead of once
[ https://issues.apache.org/jira/browse/NIFI-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16484116#comment-16484116 ] Joseph Witt commented on NIFI-5222: --- [~markap14]i applied the previous PR for validation and this one. The behavior i see results in a pretty poor user experience so i dont think we're quite there yet. I create a single debug flow and an update attribute. DF has a 10 sec validation wait. I then copy/paste several times and wait between each. Sometimes copying several at once. The validation cycle can take several minutes. > With validation being performed asynchronously, updating a processor causes > validation to occur 3 times instead of once > --- > > Key: NIFI-5222 > URL: https://issues.apache.org/jira/browse/NIFI-5222 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.7.0 >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.7.0 > > > With the merge of NIFI-950, we now have processors, controller services, and > reporting tasks being validated asynchronously. Each time that properties, > annotation data, or auto-terminated relationships are set, a task is kicked > off in the background to perform validation. Additionally, if any connections > are added/removed, it kicks off the task. > Right now, though, if a user clicks to configure a processor and then clicks > Apply, what happens on the back end is that we call setProperties(), > setAnnotationData(), and setAutoTerminatedRelationships() in the request. As > a result, we kick off validation 3 times. Instead, we should avoid kicking > off that background task until we've completed all updates to the > processor/controller service/reporting task. Then trigger validation only > once. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5222) With validation being performed asynchronously, updating a processor causes validation to occur 3 times instead of once
[ https://issues.apache.org/jira/browse/NIFI-5222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16483876#comment-16483876 ] ASF GitHub Bot commented on NIFI-5222: -- GitHub user markap14 opened a pull request: https://github.com/apache/nifi/pull/2731 NIFI-5222: Prevent validating components multiple times for each update Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/markap14/nifi NIFI-5222 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/2731.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2731 > With validation being performed asynchronously, updating a processor causes > validation to occur 3 times instead of once > --- > > Key: NIFI-5222 > URL: https://issues.apache.org/jira/browse/NIFI-5222 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.7.0 >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.7.0 > > > With the merge of NIFI-950, we now have processors, controller services, and > reporting tasks being validated asynchronously. Each time that properties, > annotation data, or auto-terminated relationships are set, a task is kicked > off in the background to perform validation. Additionally, if any connections > are added/removed, it kicks off the task. > Right now, though, if a user clicks to configure a processor and then clicks > Apply, what happens on the back end is that we call setProperties(), > setAnnotationData(), and setAutoTerminatedRelationships() in the request. As > a result, we kick off validation 3 times. Instead, we should avoid kicking > off that background task until we've completed all updates to the > processor/controller service/reporting task. Then trigger validation only > once. -- This message was sent by Atlassian JIRA (v7.6.3#76005)