You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by GitBox <gi...@apache.org> on 2022/11/16 22:09:55 UTC

[GitHub] [nifi] exceptionfactory opened a new pull request, #6671: NIFI-10835 Improve performance of TestControlRate

exceptionfactory opened a new pull request, #6671:
URL: https://github.com/apache/nifi/pull/6671

   # Summary
   
   [NIFI-10835](https://issues.apache.org/jira/browse/NIFI-10835) Improves the performance of `TestControlRate`, reducing the overall runtime from over 12 seconds to less than one second.
   
   The implementation updates `ControlRate` and `TimedBuffer` classes to use a `LongSupplier` that can be overridden to increment the current time in test methods. This approaches preserves current behavior of `ControlRate` and supports a `ConfigurableControlRate` extension in the test class, avoiding the need for `Thread.sleep()`.
   
   # Tracking
   
   Please complete the following tracking steps prior to pull request creation.
   
   ### Issue Tracking
   
   - [X] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created
   
   ### Pull Request Tracking
   
   - [X] Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-00000`
   - [X] Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-00000`
   
   ### Pull Request Formatting
   
   - [X] Pull Request based on current revision of the `main` branch
   - [X] Pull Request refers to a feature branch with one commit containing changes
   
   # Verification
   
   Please indicate the verification steps performed prior to pull request creation.
   
   ### Build
   
   - [ ] Build completed using `mvn clean install -P contrib-check`
     - [ ] JDK 8
     - [ ] JDK 11
     - [ ] JDK 17
   
   ### Licensing
   
   - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html)
   - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files
   
   ### Documentation
   
   - [ ] Documentation formatting appears as expected in rendered files
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@nifi.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [nifi] exceptionfactory commented on a diff in pull request #6671: NIFI-10835 Improve performance of TestControlRate

Posted by GitBox <gi...@apache.org>.
exceptionfactory commented on code in PR #6671:
URL: https://github.com/apache/nifi/pull/6671#discussion_r1029544465


##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestControlRate.java:
##########
@@ -86,18 +97,18 @@ public void testFileCountRate() throws InterruptedException {
         runner.assertQueueNotEmpty();
 
         // we have sent 3 files and after 1 second, we should be able to send the 4th
-        Thread.sleep(ONE_SEC_PLUS);
-        runner.run();
+        incrementCurrentTime();
+
+        runner.run(5);

Review Comment:
   Good question, in this case the number `5` matches the number of FlowFiles queued, which should be batched together, but this ensures that all of them should be processed.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@nifi.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [nifi] greyp9 commented on a diff in pull request #6671: NIFI-10835 Improve performance of TestControlRate

Posted by GitBox <gi...@apache.org>.
greyp9 commented on code in PR #6671:
URL: https://github.com/apache/nifi/pull/6671#discussion_r1029542020


##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestControlRate.java:
##########
@@ -86,18 +97,18 @@ public void testFileCountRate() throws InterruptedException {
         runner.assertQueueNotEmpty();
 
         // we have sent 3 files and after 1 second, we should be able to send the 4th
-        Thread.sleep(ONE_SEC_PLUS);
-        runner.run();
+        incrementCurrentTime();
+
+        runner.run(5);

Review Comment:
   Did you find that multiple iterations were needed sometimes?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@nifi.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [nifi] greyp9 closed pull request #6671: NIFI-10835 Improve performance of TestControlRate

Posted by GitBox <gi...@apache.org>.
greyp9 closed pull request #6671: NIFI-10835 Improve performance of TestControlRate
URL: https://github.com/apache/nifi/pull/6671


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@nifi.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org