[jira] [Updated] (NIFI-7544) ReplaceText processor seems not thread-safe?
[ https://issues.apache.org/jira/browse/NIFI-7544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Milco Numan updated NIFI-7544: -- Attachment: ReplaceText-Configuration.png > ReplaceText processor seems not thread-safe? > > > Key: NIFI-7544 > URL: https://issues.apache.org/jira/browse/NIFI-7544 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.11.4 > Environment: Red Hat Enterprise Linux 7.8 > openjdk version "11.0.7" 2020-04-14 LTS > OpenJDK Runtime Environment 18.9 (build 11.0.7+10-LTS) > OpenJDK 64-Bit Server VM 18.9 (build 11.0.7+10-LTS, mixed mode, sharing) >Reporter: Milco Numan >Priority: Major > Attachments: ReplaceText-Configuration.png, apache-nifi.txt > > > We have a flow where there are separate flow files containing a single > string. We use the ReplaceText processor to prepend this string by a > parameter name (for use in an actual URI, as query parameter) and postfix the > string by an ampersand: > When using this processor with number of concurrrent tasks > 1 (4 in our > case), we have seen it happening that content of file-A is inserted as the > result of file-B, it seems as if the process is not thread safe where the > actual search value is captured. > We can see from the logfile (created by inserting LogAttribute processors > logging uuid and the actual content after all steps in the process) that the > input of one file is overwritten with the search/replace pattern of another > file (just before it), see uploaded log file > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (NIFI-7544) ReplaceText processor seems not thread-safe?
[ https://issues.apache.org/jira/browse/NIFI-7544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Milco Numan updated NIFI-7544: -- Attachment: apache-nifi.txt > ReplaceText processor seems not thread-safe? > > > Key: NIFI-7544 > URL: https://issues.apache.org/jira/browse/NIFI-7544 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.11.4 > Environment: Red Hat Enterprise Linux 7.8 > openjdk version "11.0.7" 2020-04-14 LTS > OpenJDK Runtime Environment 18.9 (build 11.0.7+10-LTS) > OpenJDK 64-Bit Server VM 18.9 (build 11.0.7+10-LTS, mixed mode, sharing) >Reporter: Milco Numan >Priority: Major > Attachments: apache-nifi.txt > > > We have a flow where there are separate flow files containing a single > string. We use the ReplaceText processor to prepend this string by a > parameter name (for use in an actual URI, as query parameter) and postfix the > string by an ampersand: > When using this processor with number of concurrrent tasks > 1 (4 in our > case), we have seen it happening that content of file-A is inserted as the > result of file-B, it seems as if the process is not thread safe where the > actual search value is captured. > We can see from the logfile (created by inserting LogAttribute processors > logging uuid and the actual content after all steps in the process) that the > input of one file is overwritten with the search/replace pattern of another > file (just before it), see uploaded log file > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (NIFI-7544) ReplaceText processor seems not thread-safe?
Milco Numan created NIFI-7544: - Summary: ReplaceText processor seems not thread-safe? Key: NIFI-7544 URL: https://issues.apache.org/jira/browse/NIFI-7544 Project: Apache NiFi Issue Type: Bug Components: Core Framework Affects Versions: 1.11.4 Environment: Red Hat Enterprise Linux 7.8 openjdk version "11.0.7" 2020-04-14 LTS OpenJDK Runtime Environment 18.9 (build 11.0.7+10-LTS) OpenJDK 64-Bit Server VM 18.9 (build 11.0.7+10-LTS, mixed mode, sharing) Reporter: Milco Numan We have a flow where there are separate flow files containing a single string. We use the ReplaceText processor to prepend this string by a parameter name (for use in an actual URI, as query parameter) and postfix the string by an ampersand: When using this processor with number of concurrrent tasks > 1 (4 in our case), we have seen it happening that content of file-A is inserted as the result of file-B, it seems as if the process is not thread safe where the actual search value is captured. We can see from the logfile (created by inserting LogAttribute processors logging uuid and the actual content after all steps in the process) that the input of one file is overwritten with the search/replace pattern of another file (just before it), see uploaded log file -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] thenatog opened a new pull request #4342: NIFI-7543 - Added authorization for download and UI extension token e…
thenatog opened a new pull request #4342: URL: https://github.com/apache/nifi/pull/4342 …ndpoints. Thank you for submitting a contribution to Apache NiFi. Please provide a short description of the PR here: Description of PR _Enables X functionality; fixes bug NIFI-._ In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [x] Does your PR title start with **NIFI-** where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] Has your PR been rebased against the latest commit within the target branch (typically `master`)? - [x] Is your initial contribution a single, squashed commit? _Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not `squash` or use `--force` when pushing to allow for clean monitoring of changes._ ### For code changes: - [x] 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? - [ ] Have you verified that the full build is successful on JDK 8? - [ ] Have you verified that the full build is successful on JDK 11? - [ ] 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 GitHub Actions CI for build issues and submit an update to your PR as soon as possible. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-7543) Authorize requests for download-token
Nathan Gough created NIFI-7543: -- Summary: Authorize requests for download-token Key: NIFI-7543 URL: https://issues.apache.org/jira/browse/NIFI-7543 Project: Apache NiFi Issue Type: Improvement Affects Versions: 1.12.0 Reporter: Nathan Gough Assignee: Nathan Gough Fix For: 1.12.0 The download-token and ui-extension-token endpoints should authorize requests. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-7540: Labels: CI/CD concurrency platform test timeout (was: ) > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Extensions, Tools and Build >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > Labels: CI/CD, concurrency, platform, test, timeout > Fix For: 1.12.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (NIFI-7541) TestListenSMTP is failing on Windows CI build
[ https://issues.apache.org/jira/browse/NIFI-7541?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto resolved NIFI-7541. - Fix Version/s: 1.12.0 Resolution: Duplicate > TestListenSMTP is failing on Windows CI build > - > > Key: NIFI-7541 > URL: https://issues.apache.org/jira/browse/NIFI-7541 > Project: Apache NiFi > Issue Type: Bug > Components: Extensions, Tools and Build >Affects Versions: 1.11.4 >Reporter: Andy LoPresto >Assignee: Andy LoPresto >Priority: Critical > Labels: CI/CD, build, test, timeout, windows > Fix For: 1.12.0 > > Time Spent: 1h > Remaining Estimate: 0h > > The Windows Java 1.8 build is failing on GitHub Actions due to: > > {code:java} > [ERROR] Failures: > [ERROR] TestListenSMTP.validateSuccessfulInteraction:87 > [ERROR] TestListenSMTP.validateSuccessfulInteractionWithTls:150 > [ERROR] TestListenSMTP.validateTooLargeMessage:192 > [ERROR] Tests run: 17, Failures: 3, Errors: 0, Skipped: 0 > {code} > As this is not failing on any other OS and it is similar to an issue I > recently saw in a PR, I believe this is due to the test runner shutdown not > completing in the allowed wait duration. I don't have a local Windows system > to test on, but I'll submit a PR expanding this timeout on Windows and see if > the GitHub Actions pass. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-7540: Component/s: (was: Core Framework) Tools and Build Extensions > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Extensions, Tools and Build >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > Fix For: 1.12.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-7540: Resolution: Fixed Status: Resolved (was: Patch Available) > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Core Framework >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > Fix For: 1.12.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andy LoPresto updated NIFI-7540: Fix Version/s: 1.12.0 Status: Patch Available (was: Open) > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Core Framework >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > Fix For: 1.12.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17138005#comment-17138005 ] ASF subversion and git services commented on NIFI-7540: --- Commit c18b27af185453816dffe6e9ed22fe9be41646f6 in nifi's branch refs/heads/master from Joey Frazee [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=c18b27a ] NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment (#4341) * NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment This also fixes NIFI-4760. * NIFI-7540: Remove duplicate mail.smtp.starttls.enable from TestListenSMTP Signed-off-by: Andy LoPresto > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Core Framework >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17138003#comment-17138003 ] ASF subversion and git services commented on NIFI-7540: --- Commit c18b27af185453816dffe6e9ed22fe9be41646f6 in nifi's branch refs/heads/master from Joey Frazee [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=c18b27a ] NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment (#4341) * NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment This also fixes NIFI-4760. * NIFI-7540: Remove duplicate mail.smtp.starttls.enable from TestListenSMTP Signed-off-by: Andy LoPresto > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Core Framework >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] alopresto merged pull request #4341: NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment
alopresto merged pull request #4341: URL: https://github.com/apache/nifi/pull/4341 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] alopresto commented on pull request #4341: NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment
alopresto commented on pull request #4341: URL: https://github.com/apache/nifi/pull/4341#issuecomment-645082470 Thanks for fixing this, Joey. LGTM. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (NIFI-4760) TestListenSMTP tests fail on OSX
[ https://issues.apache.org/jira/browse/NIFI-4760?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17138004#comment-17138004 ] ASF subversion and git services commented on NIFI-4760: --- Commit c18b27af185453816dffe6e9ed22fe9be41646f6 in nifi's branch refs/heads/master from Joey Frazee [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=c18b27a ] NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment (#4341) * NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment This also fixes NIFI-4760. * NIFI-7540: Remove duplicate mail.smtp.starttls.enable from TestListenSMTP Signed-off-by: Andy LoPresto > TestListenSMTP tests fail on OSX > > > Key: NIFI-4760 > URL: https://issues.apache.org/jira/browse/NIFI-4760 > Project: Apache NiFi > Issue Type: Test >Affects Versions: 1.5.0 >Reporter: Jeffrey T. Zemerick >Assignee: Joey Frazee >Priority: Minor > > When building 1.5.0 on OSX High Sierra with the following command: > mvn clean install -Pcontrib-check > (At first I thought it was because I was doing -T 1C but it fails without > parallel, too.) > Some tests in TestListenSMTP reliably fail: > Results : > Failed tests: > TestListenSMTP.validateSuccessfulInteraction:88 > TestListenSMTP.validateSuccessfulInteractionWithTls:150 > TestListenSMTP.validateTooLargeMessage:192 > The relevant test output: > validateSuccessfulInteraction(org.apache.nifi.processors.email.TestListenSMTP) > Time elapsed: 15.069 sec <<< FAILURE! > java.lang.AssertionError > at > org.apache.nifi.processors.email.TestListenSMTP.validateSuccessfulInteraction(TestListenSMTP.java:88) > validateSuccessfulInteractionWithTls(org.apache.nifi.processors.email.TestListenSMTP) > Time elapsed: 16.514 sec <<< FAILURE! > java.lang.AssertionError > at > org.apache.nifi.processors.email.TestListenSMTP.validateSuccessfulInteractionWithTls(TestListenSMTP.java:150) > validateTooLargeMessage(org.apache.nifi.processors.email.TestListenSMTP) > Time elapsed: 21.516 sec <<< FAILURE! > java.lang.AssertionError > at > org.apache.nifi.processors.email.TestListenSMTP.validateTooLargeMessage(TestListenSMTP.java:192) -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17138001#comment-17138001 ] ASF subversion and git services commented on NIFI-7540: --- Commit c18b27af185453816dffe6e9ed22fe9be41646f6 in nifi's branch refs/heads/master from Joey Frazee [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=c18b27a ] NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment (#4341) * NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment This also fixes NIFI-4760. * NIFI-7540: Remove duplicate mail.smtp.starttls.enable from TestListenSMTP Signed-off-by: Andy LoPresto > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Core Framework >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] alopresto commented on pull request #4340: NIFI-7541 Increased TestListenSMTP timeout for Windows to resolve CI/…
alopresto commented on pull request #4340: URL: https://github.com/apache/nifi/pull/4340#issuecomment-645082064 Although now it does seem to be failing on the same issue as before. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] alopresto commented on pull request #4340: NIFI-7541 Increased TestListenSMTP timeout for Windows to resolve CI/…
alopresto commented on pull request #4340: URL: https://github.com/apache/nifi/pull/4340#issuecomment-645081823 Thanks Joey. Once I increased the timeout, it did complete that test successfully and failed on the `ZooKeeperMigratorTest` in a similar situation. If the underlying platform is now less stable, we should address it, but it seems like these at least progress the build. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] jfrazee edited a comment on pull request #4340: NIFI-7541 Increased TestListenSMTP timeout for Windows to resolve CI/…
jfrazee edited a comment on pull request #4340: URL: https://github.com/apache/nifi/pull/4340#issuecomment-645026124 @alopresto I had been working on fixes for this for the macOS build failures in #4341 and I think it probably addresses the Windows failures too. AFAICT successive increases in the timeouts were hiding some threading issues in the way ListenSMTP was being created in the tests. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Assigned] (NIFI-7542) Upgrade jackson-databind dependency version
[ https://issues.apache.org/jira/browse/NIFI-7542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] M Tien reassigned NIFI-7542: Assignee: M Tien > Upgrade jackson-databind dependency version > --- > > Key: NIFI-7542 > URL: https://issues.apache.org/jira/browse/NIFI-7542 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.11.4 >Reporter: M Tien >Assignee: M Tien >Priority: Major > Labels: dependency > > Upgrade jackson-databind dependency version. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (NIFI-7542) Upgrade jackson-databind dependency version
M Tien created NIFI-7542: Summary: Upgrade jackson-databind dependency version Key: NIFI-7542 URL: https://issues.apache.org/jira/browse/NIFI-7542 Project: Apache NiFi Issue Type: Improvement Components: Core Framework Affects Versions: 1.11.4 Reporter: M Tien Upgrade jackson-databind dependency version. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (NIFI-7449) ScrollElasticsearchHttp processor fails against ES 7.6 with error 400 Field expansion matches too many fields, limit: 1024
[ https://issues.apache.org/jira/browse/NIFI-7449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aquilino Viveiros updated NIFI-7449: Status: Patch Available (was: Open) > ScrollElasticsearchHttp processor fails against ES 7.6 with error 400 Field > expansion matches too many fields, limit: 1024 > -- > > Key: NIFI-7449 > URL: https://issues.apache.org/jira/browse/NIFI-7449 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.9.2, 1.9.0 >Reporter: Aquilino Viveiros >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Using Elasticsearch 7.6 (probably true for any 7.x version) and using the > processor to scroll over the data Nifi receives a 400 error from ES with the > following content => *Field expansion matches too many fields, limit: 1024* > > Precondition: Index documents and mapping must have fields over the limit > above. > > When initiating the scroll, the Nifi processor (1) uses a GET with a query > parameter as follow: > *[http://localhost:9200/index/_search?q=type:*]* > Which causes the error above. Removing the q parameter eliminates the error > > Few ideas to fix it > 1) Make query parameter optional (keep GET) > 2) Refactor existing code to use POST instead of GET. > 3) Introduce a different property for a Query to be used as a POST (does not > trigger the error above) > > Tested on > Elasticsearch 7.6 > Nifi 1.9.0 and 1.9.2 > > 1) > [https://github.com/apache/nifi/blob/9608fe33fa4a3f39ee6ddca54184ccc85ef1a163/nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-processors/src/main/java/org/apache/nifi/processors/elasticsearch/ScrollElasticsearchHttp.java#L284] -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] jfrazee edited a comment on pull request #4340: NIFI-7541 Increased TestListenSMTP timeout for Windows to resolve CI/…
jfrazee edited a comment on pull request #4340: URL: https://github.com/apache/nifi/pull/4340#issuecomment-645026124 @alopresto I had been working on fixes for this for the macOS build failures in #4341 and I think it probably addresses the Windows failures too. AFAICT the timeouts were hiding some threading issues in the way ListenSMTP was being created in the tests. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] jfrazee commented on pull request #4340: NIFI-7541 Increased TestListenSMTP timeout for Windows to resolve CI/…
jfrazee commented on pull request #4340: URL: https://github.com/apache/nifi/pull/4340#issuecomment-645026124 @alopresto I had been working on fixes for this for the macOS build failures in #4341 and I think it probably addresses the Windows failures too. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
[ https://issues.apache.org/jira/browse/NIFI-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joey Frazee updated NIFI-7540: -- Issue Type: Test (was: Improvement) > TestListenSMTP and TestListFile fail on macOS build environment > --- > > Key: NIFI-7540 > URL: https://issues.apache.org/jira/browse/NIFI-7540 > Project: Apache NiFi > Issue Type: Test > Components: Core Framework >Affects Versions: 1.12.0 >Reporter: Joey Frazee >Assignee: Joey Frazee >Priority: Major > > TestListenSMTP and TestListFile started failing again on the macOS GitHub > builds after an update to the macOS virtual environment for GitHub Actions > [1]. > 1. > https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] jfrazee opened a new pull request #4341: NIFI-7540: Fix TestListenSMTP and TestListFile on macOS build environment
jfrazee opened a new pull request #4341: URL: https://github.com/apache/nifi/pull/4341 TestListenSMTP tests started failing again on the macOS GitHub builds after an update to the macOS virtual environment for GitHub Actions [1]. This PR refactors TestListenSMTP so it isn't fussy about the concurrency and timing of the tests and makes the assertions more informative (which resolves NIFI-4760). This also adjusts the timings in TestListFile so its not as sensitive when there's second-only mtime resolution. 1. https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md - [X] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [X] Does your PR title start with **NIFI-** where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [X] Has your PR been rebased against the latest commit within the target branch (typically `master`)? - [X] Is your initial contribution a single, squashed commit? _Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not `squash` or use `--force` when pushing to allow for clean monitoring of changes._ ### For code changes: - [X] Have you ensured that the full suite of tests is executed via `mvn -Pcontrib-check clean install` at the root `nifi` folder? - [X] Have you written or updated unit tests to verify your changes? - [X] Have you verified that the full build is successful on JDK 8? - [X] Have you verified that the full build is successful on JDK 11? - [ ] 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 GitHub Actions CI for build issues and submit an update to your PR as soon as possible. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] alopresto opened a new pull request #4340: NIFI-7541 Increased TestListenSMTP timeout for Windows to resolve CI/…
alopresto opened a new pull request #4340: URL: https://github.com/apache/nifi/pull/4340 …CD build failures. Thank you for submitting a contribution to Apache NiFi. Please provide a short description of the PR here: Description of PR _Enables X functionality; fixes bug NIFI-._ In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [x] Does your PR title start with **NIFI-** where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] Has your PR been rebased against the latest commit within the target branch (typically `master`)? - [x] Is your initial contribution a single, squashed commit? _Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not `squash` or use `--force` when pushing to allow for clean monitoring of changes._ ### 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? - [x] Have you written or updated unit tests to verify your changes? - [ ] Have you verified that the full build is successful on JDK 8? - [x] Have you verified that the full build is successful on JDK 11? - [ ] 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 GitHub Actions CI for build issues and submit an update to your PR as soon as possible. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-7541) TestListenSMTP is failing on Windows CI build
Andy LoPresto created NIFI-7541: --- Summary: TestListenSMTP is failing on Windows CI build Key: NIFI-7541 URL: https://issues.apache.org/jira/browse/NIFI-7541 Project: Apache NiFi Issue Type: Bug Components: Extensions, Tools and Build Affects Versions: 1.11.4 Reporter: Andy LoPresto Assignee: Andy LoPresto The Windows Java 1.8 build is failing on GitHub Actions due to: {code:java} [ERROR] Failures: [ERROR] TestListenSMTP.validateSuccessfulInteraction:87 [ERROR] TestListenSMTP.validateSuccessfulInteractionWithTls:150 [ERROR] TestListenSMTP.validateTooLargeMessage:192 [ERROR] Tests run: 17, Failures: 3, Errors: 0, Skipped: 0 {code} As this is not failing on any other OS and it is similar to an issue I recently saw in a PR, I believe this is due to the test runner shutdown not completing in the allowed wait duration. I don't have a local Windows system to test on, but I'll submit a PR expanding this timeout on Windows and see if the GitHub Actions pass. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] thenatog opened a new pull request #4339: NIFI-7537 - Small fix to make the LDAP connection timeout property a …
thenatog opened a new pull request #4339: URL: https://github.com/apache/nifi/pull/4339 …String rather than a Long. Fixes cast error in LDAP libs. Thank you for submitting a contribution to Apache NiFi. Please provide a short description of the PR here: Description of PR _Enables X functionality; fixes bug NIFI-._ In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [x] Does your PR title start with **NIFI-** where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] Has your PR been rebased against the latest commit within the target branch (typically `master`)? - [x] Is your initial contribution a single, squashed commit? _Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not `squash` or use `--force` when pushing to allow for clean monitoring of changes._ ### For code changes: - [x] 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? - [x] Have you verified that the full build is successful on JDK 8? - [ ] Have you verified that the full build is successful on JDK 11? - [ ] 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 GitHub Actions CI for build issues and submit an update to your PR as soon as possible. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] arpadboda closed pull request #809: MINIFICPP-1254 - Introduce optional-lite
arpadboda closed pull request #809: URL: https://github.com/apache/nifi-minifi-cpp/pull/809 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-7540) TestListenSMTP and TestListFile fail on macOS build environment
Joey Frazee created NIFI-7540: - Summary: TestListenSMTP and TestListFile fail on macOS build environment Key: NIFI-7540 URL: https://issues.apache.org/jira/browse/NIFI-7540 Project: Apache NiFi Issue Type: Improvement Components: Core Framework Affects Versions: 1.12.0 Reporter: Joey Frazee Assignee: Joey Frazee TestListenSMTP and TestListFile started failing again on the macOS GitHub builds after an update to the macOS virtual environment for GitHub Actions [1]. 1. https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (NIFI-7539) Running "nifi.sh diagnostics" times out
[ https://issues.apache.org/jira/browse/NIFI-7539?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mark Payne updated NIFI-7539: - Resolution: Fixed Status: Resolved (was: Patch Available) > Running "nifi.sh diagnostics" times out > --- > > Key: NIFI-7539 > URL: https://issues.apache.org/jira/browse/NIFI-7539 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.12.0 > > Time Spent: 40m > Remaining Estimate: 0h > > When I have a large flow (2000-3000 processors) running `bin/nifi.sh > diagnostics out.txt` results in the process timing out after 60 seconds and > providing no diagnostics information. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] markap14 commented on pull request #4338: NIFI-7539: When capturing diagnostics information, capture a thread d…
markap14 commented on pull request #4338: URL: https://github.com/apache/nifi/pull/4338#issuecomment-644947861 Thanks for reviewing @bbende! Merged to master. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (NIFI-7539) Running "nifi.sh diagnostics" times out
[ https://issues.apache.org/jira/browse/NIFI-7539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17137849#comment-17137849 ] ASF subversion and git services commented on NIFI-7539: --- Commit 8b1a23a99cc25c8395117b609fd8e16c88f9518d in nifi's branch refs/heads/master from Mark Payne [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=8b1a23a ] NIFI-7539: When capturing diagnostics information, capture a thread dump once and then provide this information to ProcessorNode when capturing active threads. Previously, each processor captured a thread dump itself. When this is done thousands of times it can result in a very long delay. > Running "nifi.sh diagnostics" times out > --- > > Key: NIFI-7539 > URL: https://issues.apache.org/jira/browse/NIFI-7539 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.12.0 > > Time Spent: 40m > Remaining Estimate: 0h > > When I have a large flow (2000-3000 processors) running `bin/nifi.sh > diagnostics out.txt` results in the process timing out after 60 seconds and > providing no diagnostics information. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] markap14 merged pull request #4338: NIFI-7539: When capturing diagnostics information, capture a thread d…
markap14 merged pull request #4338: URL: https://github.com/apache/nifi/pull/4338 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (NIFI-4315) Upgrade to newer version of logback
[ https://issues.apache.org/jira/browse/NIFI-4315?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17137840#comment-17137840 ] Kirhold commented on NIFI-4315: --- Version of logback is still not upgrade, and we has issue with rolling policy - logger is creating .tmp files: [https://stackoverflow.com/questions/57356319/spring-boot-logback-xml-creating-tmp-files] This is fixed in 1.3.0 which is in alpha since.. January 18th, 2018. I upvoted that Jira, we should forget about it in future. > Upgrade to newer version of logback > --- > > Key: NIFI-4315 > URL: https://issues.apache.org/jira/browse/NIFI-4315 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.3.0 >Reporter: Aldrin Piri >Priority: Major > > There are some bugs outstanding with logback that can cause compression to > fail in some environments (was able to recreate in Windows and OS X), > seemingly related to the current outstanding issue: > https://jira.qos.ch/browse/LOGBACK-1162 > This will also cause the given set of files to grow beyond their bounds of a > specified totalSizeCap if one is provided. > Steps I used to create this comprised: > * Using a simple flow that generates flow files and terminates them at an > update attribute is sufficient. > * Adjust logback to have DEBUG level for the root logger. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] bbende commented on pull request #4338: NIFI-7539: When capturing diagnostics information, capture a thread d…
bbende commented on pull request #4338: URL: https://github.com/apache/nifi/pull/4338#issuecomment-644937419 +1 Looks good 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (NIFI-7539) Running "nifi.sh diagnostics" times out
[ https://issues.apache.org/jira/browse/NIFI-7539?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mark Payne updated NIFI-7539: - Status: Patch Available (was: Open) > Running "nifi.sh diagnostics" times out > --- > > Key: NIFI-7539 > URL: https://issues.apache.org/jira/browse/NIFI-7539 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > Fix For: 1.12.0 > > Time Spent: 10m > Remaining Estimate: 0h > > When I have a large flow (2000-3000 processors) running `bin/nifi.sh > diagnostics out.txt` results in the process timing out after 60 seconds and > providing no diagnostics information. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] markap14 opened a new pull request #4338: NIFI-7539: When capturing diagnostics information, capture a thread d…
markap14 opened a new pull request #4338: URL: https://github.com/apache/nifi/pull/4338 …ump once and then provide this information to ProcessorNode when capturing active threads. Previously, each processor captured a thread dump itself. When this is done thousands of times it can result in a very long delay. Thank you for submitting a contribution to Apache NiFi. Please provide a short description of the PR here: Description of PR _Enables X functionality; fixes bug 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? _Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not `squash` or use `--force` when pushing to allow for clean monitoring of changes._ ### 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? - [ ] Have you verified that the full build is successful on JDK 8? - [ ] Have you verified that the full build is successful on JDK 11? - [ ] 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 GitHub Actions CI for build issues and submit an update to your PR as soon as possible. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-7539) Running "nifi.sh diagnostics" times out
Mark Payne created NIFI-7539: Summary: Running "nifi.sh diagnostics" times out Key: NIFI-7539 URL: https://issues.apache.org/jira/browse/NIFI-7539 Project: Apache NiFi Issue Type: Bug Components: Core Framework Reporter: Mark Payne Assignee: Mark Payne Fix For: 1.12.0 When I have a large flow (2000-3000 processors) running `bin/nifi.sh diagnostics out.txt` results in the process timing out after 60 seconds and providing no diagnostics information. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (NIFI-7537) LDAP Connection Timeout Issue
[ https://issues.apache.org/jira/browse/NIFI-7537?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Nathan Gough reassigned NIFI-7537: -- Assignee: Nathan Gough > LDAP Connection Timeout Issue > - > > Key: NIFI-7537 > URL: https://issues.apache.org/jira/browse/NIFI-7537 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.12.0 >Reporter: Nathan Gough >Assignee: Nathan Gough >Priority: Major > Fix For: 1.12.0 > > > The TLS refactor caused an issue with LDAP connection configuration, > specifically the 10 secs but > possibly other numerical fields. > Saw the below exception when attempting to use LDAP on master. Believe it is > related to changes from the SSLContext refactor work in -NIFI-7407.- > {code:java} > 2020-06-10 17:58:54,263 ERROR [NiFi Web Server-89] > o.a.n.w.a.c.AdministrationExceptionMapper > org.apache.nifi.admin.service.AdministrationException: Unable to validate the > supplied credentials. Please contact the system administrator.. Returning > Internal Server Error response.2020-06-10 17:58:54,263 ERROR [NiFi Web > Server-89] o.a.n.w.a.c.AdministrationExceptionMapper > org.apache.nifi.admin.service.AdministrationException: Unable to validate the > supplied credentials. Please contact the system administrator.. Returning > Internal Server Error > response.org.apache.nifi.admin.service.AdministrationException: Unable to > validate the supplied credentials. Please contact the system administrator. > at > org.apache.nifi.web.api.AccessResource.createAccessToken(AccessResource.java:737) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) at > org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:76) > at > org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:148) > at > org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:191) > at > org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:200) > at > org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:103) > at > org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:493) > at > org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:415) > at > org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:104) > at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:277) > at org.glassfish.jersey.internal.Errors$1.call(Errors.java:272) at > org.glassfish.jersey.internal.Errors$1.call(Errors.java:268) at > org.glassfish.jersey.internal.Errors.process(Errors.java:316) at > org.glassfish.jersey.internal.Errors.process(Errors.java:298) at > org.glassfish.jersey.internal.Errors.process(Errors.java:268) at > org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:289) > at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:256) > at > org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:703) > at > org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:416) > at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:370) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229) > at > org.eclipse.jetty.servlet.ServletHolder$NotAsyncServlet.service(ServletHolder.java:1395) > at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:755) at > org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1617) > at org.apache.nifi.web.filter.RequestLogger.doFilter(RequestLogger.java:66) > at > org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604) > at > org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:208) > at > org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:177) > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) > at >
[GitHub] [nifi] tpalfy commented on a change in pull request #4337: NIFI-7536: Fix to improve performance of updating parameters
tpalfy commented on a change in pull request #4337: URL: https://github.com/apache/nifi/pull/4337#discussion_r440965363 ## File path: nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/endpoints/ProcessorSummaryStatusEndpointMerger.java ## @@ -0,0 +1,100 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.cluster.coordination.http.endpoints; + +import org.apache.nifi.cluster.coordination.http.EndpointResponseMerger; +import org.apache.nifi.cluster.manager.NodeResponse; +import org.apache.nifi.cluster.manager.PermissionsDtoMerger; +import org.apache.nifi.controller.status.RunStatus; +import org.apache.nifi.web.api.dto.ProcessorScheduleSummaryDTO; +import org.apache.nifi.web.api.entity.ProcessorScheduleSummariesEntity; +import org.apache.nifi.web.api.entity.ProcessorScheduleSummaryEntity; + +import java.net.URI; +import java.util.ArrayList; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; + +public class ProcessorSummaryStatusEndpointMerger implements EndpointResponseMerger { +public static final String SCHEDULE_SUMMARY_URI = "/nifi-api/processors/schedule-summaries/query"; + +@Override +public boolean canHandle(final URI uri, final String method) { +return "POST".equalsIgnoreCase(method) && SCHEDULE_SUMMARY_URI.equals(uri.getPath()); +} + +@Override +public NodeResponse merge(final URI uri, final String method, final Set successfulResponses, final Set problematicResponses, final NodeResponse clientResponse) { +if (!canHandle(uri, method)) { +throw new IllegalArgumentException("Cannot use Endpoint Mapper of type " + getClass().getSimpleName() + " to map responses for URI " + uri + ", HTTP Method " + method); +} + +final ProcessorScheduleSummariesEntity responseEntity = clientResponse.getClientResponse().readEntity(ProcessorScheduleSummariesEntity.class); + +// Create mapping of Processor ID to its schedule Summary. +final Map scheduleSummaries = responseEntity.getScheduleSummaries().stream() +.collect(Collectors.toMap(entity -> entity.getScheduleSummary().getId(), entity -> entity)); + +for (final NodeResponse nodeResponse : successfulResponses) { +final ProcessorScheduleSummariesEntity nodeResponseEntity = nodeResponse == clientResponse ? responseEntity : + nodeResponse.getClientResponse().readEntity(ProcessorScheduleSummariesEntity.class); + +for (final ProcessorScheduleSummaryEntity processorEntity : nodeResponseEntity.getScheduleSummaries()) { +final String processorId = processorEntity.getScheduleSummary().getId(); + +final ProcessorScheduleSummaryEntity mergedEntity = scheduleSummaries.computeIfAbsent(processorId, id -> new ProcessorScheduleSummaryEntity()); +merge(mergedEntity, processorEntity); +} +} + +final ProcessorScheduleSummariesEntity mergedEntity = new ProcessorScheduleSummariesEntity(); +mergedEntity.setScheduleSummaries(new ArrayList<>(scheduleSummaries.values())); +return new NodeResponse(clientResponse, mergedEntity); +} + +private void merge(final ProcessorScheduleSummaryEntity target, final ProcessorScheduleSummaryEntity additional) { +PermissionsDtoMerger.mergePermissions(target.getPermissions(), additional.getPermissions()); + +final ProcessorScheduleSummaryDTO targetSummaryDto = target.getScheduleSummary(); +final ProcessorScheduleSummaryDTO additionalSummaryDto = additional.getScheduleSummary(); + +// If name is null, it's because of permissions, so we want to nullify it in the target. +if (additionalSummaryDto.getName() == null) { +targetSummaryDto.setName(null); +} + + targetSummaryDto.setActiveThreadCount(targetSummaryDto.getActiveThreadCount() + additionalSummaryDto.getActiveThreadCount()); + +final String additionalRunStatus = additionalSummaryDto.getRunStatus(); Review comment: To me it seems the `runStatus` is
[jira] [Created] (NIFI-7538) Per STIG: Rule Title: The application must enforce the limit of three consecutive invalid logon attempts by a user during a 15 minute time period.
David Rose created NIFI-7538: Summary: Per STIG: Rule Title: The application must enforce the limit of three consecutive invalid logon attempts by a user during a 15 minute time period. Key: NIFI-7538 URL: https://issues.apache.org/jira/browse/NIFI-7538 Project: Apache NiFi Issue Type: Improvement Components: Security Affects Versions: 1.9.2 Environment: CentOS 7.7+ Reporter: David Rose Fix For: 1.9.2 *The following is a Cat-1 STIG mitigation:* *The following STIG for installation within the government space* *Rule Title*{color:#00}: The application must enforce the limit of three consecutive invalid logon attempts by a user during a 15 minute time period.{color} *Discussion*: By limiting the number of failed logon attempts, the risk of unauthorized system access via user password guessing, otherwise known as brute forcing, is reduced. Limits are imposed by locking the account. User notification when three failed logon attempts are exceeded is an operational consideration determined by the application owner. In some instances the operational situation may dictate that no notice is to be provided to the user when their account is locked. In other situations, the user may be notified their account is now locked. This decision is left to the application owner based upon their operational scenarios. *Check Text*: All testing must be performed within a 15-minute window. Log on to the application with a test user account. Intentionally enter an incorrect user password or pin. Repeat 2 times within 15 minutes for a total of three failed attempts. Notification of a locked account may or may not be provided. Using the correct user password or pin, attempt to logon a 4th time. If the logon is successful upon the 4th attempt the account was not locked after the third failed attempt and this is a finding. *Fix Text*: Configure the application to enforce an account lock after 3 failed logon attempts occurring within a 15-minute window. *References* *CCI*: CCI-44: The information system enforces the organization-defined limit of consecutive invalid logon attempts by a user during the organization-defined time period. NIST SP 800-53 :: AC-7 a NIST SP 800-53A :: AC-7.1 (ii) NIST SP 800-53 Revision 4 :: AC-7 a -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] markap14 commented on pull request #4328: NIFI-7035 The first curator connection issue is logged as ERROR until…
markap14 commented on pull request #4328: URL: https://github.com/apache/nifi/pull/4328#issuecomment-644870542 Thanks @feitgraph I was able to startup a single cluster node with the zookeeper intentionally not started. Saw the tons of logs. Then shutdown, added this property to bootstrap.conf, and restarted. Upon restart, I saw the note that the connection to zookeeper was lost but didn't see errors spewing into the logs. +1 merged to master. Thanks for the fix! 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Resolved] (NIFI-7035) Don't spam logs with Apache Curator errors on Zookeeper Disconnect
[ https://issues.apache.org/jira/browse/NIFI-7035?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mark Payne resolved NIFI-7035. -- Fix Version/s: 1.12.0 Resolution: Fixed > Don't spam logs with Apache Curator errors on Zookeeper Disconnect > -- > > Key: NIFI-7035 > URL: https://issues.apache.org/jira/browse/NIFI-7035 > Project: Apache NiFi > Issue Type: Improvement >Reporter: Shawn Weeks >Assignee: Makarov Vasiliy Nicolaevich >Priority: Trivial > Fix For: 1.12.0 > > Time Spent: 1h 10m > Remaining Estimate: 0h > > Sometimes when you startup NiFi and not all of the Zookeeper nodes aren't up > it fills the logs with Apache Curator errors like this one. We should be able > to improve this a bit as logging the same error repeatedly isn't helpful. > {code:java} > 2020-01-16 08:58:28,767 ERROR [Curator-Framework-0] > o.a.c.f.imps.CuratorFrameworkImpl Background retry gave up > org.apache.curator.CuratorConnectionLossException: KeeperErrorCode = > ConnectionLoss > at > org.apache.curator.framework.imps.CuratorFrameworkImpl.performBackgroundOperation(CuratorFrameworkImpl.java:972) > at > org.apache.curator.framework.imps.CuratorFrameworkImpl.backgroundOperationsLoop(CuratorFrameworkImpl.java:943) > at > org.apache.curator.framework.imps.CuratorFrameworkImpl.access$300(CuratorFrameworkImpl.java:66) > at > org.apache.curator.framework.imps.CuratorFrameworkImpl$4.call(CuratorFrameworkImpl.java:346) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] markap14 merged pull request #4328: NIFI-7035 The first curator connection issue is logged as ERROR until…
markap14 merged pull request #4328: URL: https://github.com/apache/nifi/pull/4328 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (NIFI-7438) Controller Service UI hangs since controller service doesn't handle reconnections properly
[ https://issues.apache.org/jira/browse/NIFI-7438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17136766#comment-17136766 ] Matt Burgess commented on NIFI-7438: [~cdanner] Can this case be closed, or is there something left to do for it? > Controller Service UI hangs since controller service doesn't handle > reconnections properly > -- > > Key: NIFI-7438 > URL: https://issues.apache.org/jira/browse/NIFI-7438 > Project: Apache NiFi > Issue Type: Bug > Components: Configuration, Core Framework >Affects Versions: 1.11.1, 1.11.2, 1.11.3, 1.11.4 > Environment: RHEL 7.6 > NiFi on Docker >Reporter: Christian Danner >Priority: Major > Attachments: image-2020-05-11-13-38-30-457.png > > > We encounter Problems in showing and managing Controller Services on NiFi > Servers that run longer than connected systems we use to connect via > Controller Services. Viewing such Controller Services takes about 1 minute to > open the view and then shows multiple instances of it (see screenshot). > e.g. A "DBCPConnectionPool 1.11.4" shows multiple "Supported Controller > Services" all the "DBCPService 1.11.4 from org.apache.nifi - > nifi-standard-services-api-nar" (19 occurances) as well as shows multiple > Groups of "Processors" {color:#172b4d}(19 occurances){color} with the same > instances (9 processor instances). > > In this specific case we have a connection to a database server that is > shutdown during the night (DEV environment). NiFi Server continues to run > while database is not reachable. > We suspect that when the database comes available again, it will load the > controller service completely while not unloading old sessions. Disabling and > re-enabling the controller service doesn't solve the issue, only a complete > NiFI Server restart fixes this issue. > All related processors also fail to execute defined "ExecuteSQL" Processors > until we restarted the Controller Services at least. We get a > "SocketException" since it tries to make an attempt on the old connection > which is not active anymore. For us it is important to have a "Infinite > Connection" while interacting with the database ({color:#262626}Max > Connection Lifetime{color:#003000} = -1).{color}{color} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] markap14 commented on a change in pull request #4337: NIFI-7536: Fix to improve performance of updating parameters
markap14 commented on a change in pull request #4337: URL: https://github.com/apache/nifi/pull/4337#discussion_r440956453 ## File path: nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/util/ClusterReplicationComponentLifecycle.java ## @@ -171,34 +172,37 @@ private boolean waitForProcessorValidation(final NiFiUser user, final URI origin URI groupUri; try { groupUri = new URI(originalUri.getScheme(), originalUri.getUserInfo(), originalUri.getHost(), -originalUri.getPort(), "/nifi-api/process-groups/" + groupId + "/processors", "includeDescendantGroups=true", originalUri.getFragment()); +originalUri.getPort(), "/nifi-api/processors/schedule-summaries/queries", null, originalUri.getFragment()); Review comment: Good catch! Will fix. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] markap14 commented on a change in pull request #4337: NIFI-7536: Fix to improve performance of updating parameters
markap14 commented on a change in pull request #4337: URL: https://github.com/apache/nifi/pull/4337#discussion_r440956698 ## File path: nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/endpoints/ProcessorSummaryStatusEndpointMerger.java ## @@ -0,0 +1,100 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.cluster.coordination.http.endpoints; + +import org.apache.nifi.cluster.coordination.http.EndpointResponseMerger; +import org.apache.nifi.cluster.manager.NodeResponse; +import org.apache.nifi.cluster.manager.PermissionsDtoMerger; +import org.apache.nifi.controller.status.RunStatus; +import org.apache.nifi.web.api.dto.ProcessorScheduleSummaryDTO; +import org.apache.nifi.web.api.entity.ProcessorScheduleSummariesEntity; +import org.apache.nifi.web.api.entity.ProcessorScheduleSummaryEntity; + +import java.net.URI; +import java.util.ArrayList; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; + +public class ProcessorSummaryStatusEndpointMerger implements EndpointResponseMerger { Review comment: I agree. Will change. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] adamdebreceni opened a new pull request #818: WIP - MINIFICPP-1263 - Possible fix for segfault
adamdebreceni opened a new pull request #818: URL: https://github.com/apache/nifi-minifi-cpp/pull/818 Thank you for submitting a contribution to Apache NiFi - MiNiFi C++. 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 MINIFICPP- 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: - [ ] 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? - [ ] If applicable, have you updated the NOTICE file? ### 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. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (MINIFICPP-1263) Safely delete CivetServer in tests.
Adam Debreceni created MINIFICPP-1263: - Summary: Safely delete CivetServer in tests. Key: MINIFICPP-1263 URL: https://issues.apache.org/jira/browse/MINIFICPP-1263 Project: Apache NiFi MiNiFi C++ Issue Type: Bug Reporter: Adam Debreceni Assignee: Adam Debreceni `start_webserver` returns a raw-pointer causing segfault if not freed, it should return a managed instance. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Description: *Acceptance criteria**:* Planned flow to use: *GenerateFlowFile* => *UpdateAttribute* => *RetryFlowFil**e* => *PutFile(s)* See attached table for a table that is easier to read than this one: |{color:#00}*Expected Retry Property Name*{color}|{color:#00}*Expected Retry Property Value*{color}|{color:#00}*Expected Outbound Relationship*{color}|{color:#00}*Expect Penalty on Flowfile*{color}|{color:#00}*Retry Attribute Value on FlowFile*{color}|{color:#00}*Retry Attribute Value Before Processing*{color}|{color:#00}*Maximum Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail on Non-numerical Overwrite*{color}|{color:#00}*Reuse Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|
[GitHub] [nifi] tpalfy commented on a change in pull request #4337: NIFI-7536: Fix to improve performance of updating parameters
tpalfy commented on a change in pull request #4337: URL: https://github.com/apache/nifi/pull/4337#discussion_r440866568 ## File path: nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/util/ClusterReplicationComponentLifecycle.java ## @@ -171,34 +172,37 @@ private boolean waitForProcessorValidation(final NiFiUser user, final URI origin URI groupUri; try { groupUri = new URI(originalUri.getScheme(), originalUri.getUserInfo(), originalUri.getHost(), -originalUri.getPort(), "/nifi-api/process-groups/" + groupId + "/processors", "includeDescendantGroups=true", originalUri.getFragment()); +originalUri.getPort(), "/nifi-api/processors/schedule-summaries/queries", null, originalUri.getFragment()); Review comment: Shouldn't the endpoint String here be the same as in ```java public class ProcessorSummaryStatusEndpointMerger implements EndpointResponseMerger { public static final String SCHEDULE_SUMMARY_URI = "/nifi-api/processors/schedule-summaries/query"; ``` `.../query` vs `.../queries` ## File path: nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/endpoints/ProcessorSummaryStatusEndpointMerger.java ## @@ -0,0 +1,100 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.nifi.cluster.coordination.http.endpoints; + +import org.apache.nifi.cluster.coordination.http.EndpointResponseMerger; +import org.apache.nifi.cluster.manager.NodeResponse; +import org.apache.nifi.cluster.manager.PermissionsDtoMerger; +import org.apache.nifi.controller.status.RunStatus; +import org.apache.nifi.web.api.dto.ProcessorScheduleSummaryDTO; +import org.apache.nifi.web.api.entity.ProcessorScheduleSummariesEntity; +import org.apache.nifi.web.api.entity.ProcessorScheduleSummaryEntity; + +import java.net.URI; +import java.util.ArrayList; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; + +public class ProcessorSummaryStatusEndpointMerger implements EndpointResponseMerger { Review comment: Maybe we could use a name like `ProcessorRunStatusDetails...` for this use-case as scheduling related information is not really a part of it. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] fgerlits opened a new pull request #817: MINIFICPP-1262 Fix the MinifiConcurrentQueueTests unit test
fgerlits opened a new pull request #817: URL: https://github.com/apache/nifi-minifi-cpp/pull/817 ### Description of the changes * Move the timed and untimed waiting consumer tests into separate test cases, as the timed consumers do not need a sleep in the test (they wait and retry internally) and they do not need to stop the queue, but the untimed consumers do. * In the untimed consumer case, change the fixed 10 ms wait to a wait until the queue is empty (but not more than 1 second). * Change possibly infinite loops in two other tests to also wait for the condition with a 1 second timeout. * Move some other independent tests, which used to be sections within a single test, into separate test cases. * Minor cleanup --- Thank you for submitting a contribution to Apache NiFi - MiNiFi C++. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [x] Does your PR title start with MINIFICPP- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] 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: - [ ] 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? - [ ] If applicable, have you updated the NOTICE file? ### 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. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Description: *Acceptance criteria**:* Planned flow to use: *GetFile(s)* => *PutFile* (with *Conflict Resolution Strategy* set to *Fail*) => *RetryFlowFile* Using this conflict resolution strategy on PutFile to fail means that we can make it fail by making it try writing a file that already exists. See attached table for a table that is easier to read than this one: |{color:#00}*Expected Retry Property Name*{color}|{color:#00}*Expected Retry Property Value*{color}|{color:#00}*Expected Outbound Relationship*{color}|{color:#00}*Expect Penalty on Flowfile*{color}|{color:#00}*Retry Attribute Value on FlowFile*{color}|{color:#00}*Retry Attribute Value Before Processing*{color}|{color:#00}*Maximum Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail on Non-numerical Overwrite*{color}|{color:#00}*Reuse Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Description: *Acceptance criteria**:* Planned flow to use: *GetFile(s)* => *PutFile* (with *Conflict Resolution Strategy* set to *Fail*) => *RetryFlowFile* Using this conflict resolution strategy on PutFile to fail means that we can make it fail by making it try writing a file that already exists. See attached table for a table that is easier to read than this one: |{color:#00}*Expected Retry Property Name*{color}|{color:#00}*Expected Retry Property Value*{color}|{color:#00}*Expected Outbound Relationship*{color}|{color:#00}*Expect Penalty on Flowfile*{color}|{color:#00}*Retry Attribute Value on FlowFile*{color}|{color:#00}*Retry Attribute Value Before Processing*{color}|{color:#00}*Maximum Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail on Non-numerical Overwrite*{color}|{color:#00}*Reuse Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not
[jira] [Created] (MINIFICPP-1262) MinifiConcurrentQueueTests fail randomly
Ferenc Gerlits created MINIFICPP-1262: - Summary: MinifiConcurrentQueueTests fail randomly Key: MINIFICPP-1262 URL: https://issues.apache.org/jira/browse/MINIFICPP-1262 Project: Apache NiFi MiNiFi C++ Issue Type: Bug Reporter: Ferenc Gerlits Assignee: Ferenc Gerlits Fix For: 0.8.0 The MinifiConcurrentQueueTests sometimes fail, mainly in Windows builds in CI. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] patricker commented on pull request #3511: NIFI-6175 Spark Livy - Improving Livy
patricker commented on pull request #3511: URL: https://github.com/apache/nifi/pull/3511#issuecomment-644782068 @naru014 Yes, this is expected. This is somewhat a limitation of Livy 0.5.0. Livy will not let you find sessions by name until v0.6.0. This version is available, but I don't have it in my environment. There are two work arounds I've used. - Use different accounts to run the session controllers. The code does check to see if the username matches between the session it grabs from Livy and the configuration. - Use multiple Livy servers, we used two different name nodes and setup an instance on each. If you have Livy 0.6.0 you could update the code to work with session names. This would easily work around your issue, each session in a session controller could be named `session-1`, `session-2`, etc... Note: Livy never updated the documentation when they added this feature (https://github.com/apache/incubator-livy/pull/48). But it looks like you just replace the sessionId with the name when making calls. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] arpadboda commented on pull request #808: MINIFICPP-1234 - Enable all archive tests on Windows.
arpadboda commented on pull request #808: URL: https://github.com/apache/nifi-minifi-cpp/pull/808#issuecomment-644771966 Please fix the linter error: ```cpp/libminifi/include//utils/file/FileUtils.h:132: Line ends in whitespace. Consider deleting these extra spaces. [whitespace/end_of_line] [4]``` 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
adamdebreceni commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440848973 ## File path: libminifi/include/utils/PropertyErrors.h ## @@ -0,0 +1,115 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenseas/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef LIBMINIFI_INCLUDE_UTILS_PROPERTYERRORS_H_ +#define LIBMINIFI_INCLUDE_UTILS_PROPERTYERRORS_H_ + +#include + +#include "Exception.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { + +namespace core { + +class PropertyValue; +class ConfigurableComponent; +class Property; + +} /* namespace core */ + +namespace utils { + +class ValueException: public Exception{ + private: + explicit ValueException(const std::string& err): Exception(ExceptionType::GENERAL_EXCEPTION, err) {} + explicit ValueException(const char* err): Exception(ExceptionType::GENERAL_EXCEPTION, err) {} + + // base class already has a virtual destructor + + friend class ParseException; + friend class ConversionException; + friend class InvalidValueException; +}; Review comment: do we have some `implementation_detail` directory where we could stash it, so it doesn't become part of the API? 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] arpadboda commented on a change in pull request #812: MINIFICPP-1247 - Enhance logging for CWEL
arpadboda commented on a change in pull request #812: URL: https://github.com/apache/nifi-minifi-cpp/pull/812#discussion_r440845810 ## File path: extensions/windows-event-log/ConsumeWindowsEventLog.cpp ## @@ -173,6 +173,15 @@ ConsumeWindowsEventLog::ConsumeWindowsEventLog(const std::string& name, utils::I writePlainText_ = false; } +void ConsumeWindowsEventLog::notifyStop() { + logger_->log_trace("start notifyStop"); + pBookmark_.reset(); + if (hMsobjsDll_) { +FreeLibrary(hMsobjsDll_); Review comment: I think we should grab the mutex here. A long-running onTrigger execution can still be running when notifyStop is called from a different thread. So we might unload the library while it's in use. To avoid this, let's lock onTriggerMutex_ 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Attachment: RetryFlowFileAcceptanceTable.pdf > Implement RetryFlowFile Processor > - > > Key: MINIFICPP-1251 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1251 > Project: Apache NiFi MiNiFi C++ > Issue Type: New Feature >Reporter: Adam Hunyadi >Assignee: Adam Hunyadi >Priority: Minor > Attachments: RetryFlowFileAcceptanceTable.numbers, > RetryFlowFileAcceptanceTable.pdf > > > *Acceptance criteria**:* > Planned flow to use: > *GetFile(s)* => *PutFile* (with *Conflict Resolution Strategy* set to *Fail*) > => *RetryFlowFile* > Using this conflict resolution strategy on PutFile to fail means that we can > make it fail by making it try writing a file that already exists. > > See attached table for a table that is easier to read than this one: > |{color:#00}*Expected Retry Property > Name*{color}|{color:#00}*Expected Retry Property > Value*{color}|{color:#00}*Expected Outbound > Relationship*{color}|{color:#00}*Expect Penalty on > Flowfile*{color}|{color:#00}*Retry Attribute Value on > FlowFile*{color}|{color:#00}*Retry Attribute Value Before > Processing*{color}|{color:#00}*Maximum > Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail > on Non-numerical Overwrite*{color}|{color:#00}*Reuse > Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}FALSE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| >
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Attachment: (was: RetryFlowFileAcceptanceTable.pdf) > Implement RetryFlowFile Processor > - > > Key: MINIFICPP-1251 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1251 > Project: Apache NiFi MiNiFi C++ > Issue Type: New Feature >Reporter: Adam Hunyadi >Assignee: Adam Hunyadi >Priority: Minor > Attachments: RetryFlowFileAcceptanceTable.numbers, > RetryFlowFileAcceptanceTable.pdf > > > *Acceptance criteria**:* > Planned flow to use: > *GetFile(s)* => *PutFile* (with *Conflict Resolution Strategy* set to *Fail*) > => *RetryFlowFile* > Using this conflict resolution strategy on PutFile to fail means that we can > make it fail by making it try writing a file that already exists. > > See attached table for a table that is easier to read than this one: > |{color:#00}*Expected Retry Property > Name*{color}|{color:#00}*Expected Retry Property > Value*{color}|{color:#00}*Expected Outbound > Relationship*{color}|{color:#00}*Expect Penalty on > Flowfile*{color}|{color:#00}*Retry Attribute Value on > FlowFile*{color}|{color:#00}*Retry Attribute Value Before > Processing*{color}|{color:#00}*Maximum > Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail > on Non-numerical Overwrite*{color}|{color:#00}*Reuse > Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}FALSE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Attachment: RetryFlowFileAcceptanceTable.numbers > Implement RetryFlowFile Processor > - > > Key: MINIFICPP-1251 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1251 > Project: Apache NiFi MiNiFi C++ > Issue Type: New Feature >Reporter: Adam Hunyadi >Assignee: Adam Hunyadi >Priority: Minor > Attachments: RetryFlowFileAcceptanceTable.numbers, > RetryFlowFileAcceptanceTable.pdf > > > *Acceptance criteria**:* > Planned flow to use: > *GetFile(s)* => *PutFile* (with *Conflict Resolution Strategy* set to *Fail*) > => *RetryFlowFile* > Using this conflict resolution strategy on PutFile to fail means that we can > make it fail by making it try writing a file that already exists. > > See attached table for a table that is easier to read than this one: > |{color:#00}*Expected Retry Property > Name*{color}|{color:#00}*Expected Retry Property > Value*{color}|{color:#00}*Expected Outbound > Relationship*{color}|{color:#00}*Expect Penalty on > Flowfile*{color}|{color:#00}*Retry Attribute Value on > FlowFile*{color}|{color:#00}*Retry Attribute Value Before > Processing*{color}|{color:#00}*Maximum > Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail > on Non-numerical Overwrite*{color}|{color:#00}*Reuse > Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}FALSE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| >
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Attachment: (was: RetryFlowFileAcceptanceTable.numbers) > Implement RetryFlowFile Processor > - > > Key: MINIFICPP-1251 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1251 > Project: Apache NiFi MiNiFi C++ > Issue Type: New Feature >Reporter: Adam Hunyadi >Assignee: Adam Hunyadi >Priority: Minor > Attachments: RetryFlowFileAcceptanceTable.numbers, > RetryFlowFileAcceptanceTable.pdf > > > *Acceptance criteria**:* > Planned flow to use: > *GetFile(s)* => *PutFile* (with *Conflict Resolution Strategy* set to *Fail*) > => *RetryFlowFile* > Using this conflict resolution strategy on PutFile to fail means that we can > make it fail by making it try writing a file that already exists. > > See attached table for a table that is easier to read than this one: > |{color:#00}*Expected Retry Property > Name*{color}|{color:#00}*Expected Retry Property > Value*{color}|{color:#00}*Expected Outbound > Relationship*{color}|{color:#00}*Expect Penalty on > Flowfile*{color}|{color:#00}*Retry Attribute Value on > FlowFile*{color}|{color:#00}*Retry Attribute Value Before > Processing*{color}|{color:#00}*Maximum > Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail > on Non-numerical Overwrite*{color}|{color:#00}*Reuse > Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}n/a{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*(property cleared)*{color}|{color:#00}*(property > cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not > set){color}|{color:#00}TRUE{color}|{color:#00}(not > set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| > |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not > set){color}|{color:#00}FALSE{color}|{color:#00}(not > set){color}|{color:#00}(not
[jira] [Updated] (MINIFICPP-1251) Implement RetryFlowFile Processor
[ https://issues.apache.org/jira/browse/MINIFICPP-1251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Hunyadi updated MINIFICPP-1251: Description: *Acceptance criteria**:* Planned flow to use: *GetFile(s)* => *PutFile* (with *Conflict Resolution Strategy* set to *Fail*) => *RetryFlowFile* Using this conflict resolution strategy on PutFile to fail means that we can make it fail by making it try writing a file that already exists. See attached table for a table that is easier to read than this one: |{color:#00}*Expected Retry Property Name*{color}|{color:#00}*Expected Retry Property Value*{color}|{color:#00}*Expected Outbound Relationship*{color}|{color:#00}*Expect Penalty on Flowfile*{color}|{color:#00}*Retry Attribute Value on FlowFile*{color}|{color:#00}*Retry Attribute Value Before Processing*{color}|{color:#00}*Maximum Retries*{color}|{color:#00}*Penalize Retries*{color}|{color:#00}*Fail on Non-numerical Overwrite*{color}|{color:#00}*Reuse Mode*{color}|{color:#00}*Processor UUID matches FlowFile UUID*{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retryCount*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retryCount{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}n/a{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}4{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*6*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}5{color}|{color:#00}6{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}TRUE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*1*{color}|{color:#00}*retry*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}2{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*(property cleared)*{color}|{color:#00}*(property cleared)*{color}|{color:#00}*retries_exceeded*{color}|{color:#00}*FALSE*{color}|{color:#00}flowfile.retries{color}|{color:#00}3{color}|{color:#00}(not set){color}|{color:#00}FALSE{color}|{color:#00}(not set){color}|{color:#00}(not set){color}|{color:#00}TRUE{color}| |{color:#00}*flowfile.retries*{color}|{color:#00}*2*{color}|{color:#00}*retry*{color}|{color:#00}*TRUE*{color}|{color:#00}flowfile.retries{color}|{color:#00}1{color}|{color:#00}(not
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
adamdebreceni commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440840987 ## File path: libminifi/include/core/CachedValueValidator.h ## @@ -0,0 +1,103 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H +#define NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H + +#include "PropertyValidation.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace core { + +class CachedValueValidator{ + public: + enum class Result { +FAILURE, +SUCCESS, +RECOMPUTE + }; + + CachedValueValidator() = default; + CachedValueValidator(const CachedValueValidator& other) : validator_(other.validator_) {} + CachedValueValidator(CachedValueValidator&& other) noexcept : validator_(std::move(other.validator_)) {} Review comment: the only owner of a `CachedValueValidator` instance should be a `PropertyValue`, ideally the move-constructor (and move-assignment) should be deleted, but since the `PropertyValue` has those defaulted that's not an option, when you move a `CachedValueValidator` into a `PropertyValue::validator_` you change the validator object in a value thus the cached validation result cannot be trusted anymore, the most important part is that such a `CachedValueValidator` should only be executed on its owner value 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
adamdebreceni commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440836150 ## File path: libminifi/include/utils/PropertyErrors.h ## @@ -0,0 +1,115 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenseas/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef LIBMINIFI_INCLUDE_UTILS_PROPERTYERRORS_H_ +#define LIBMINIFI_INCLUDE_UTILS_PROPERTYERRORS_H_ + +#include + +#include "Exception.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { + +namespace core { + +class PropertyValue; +class ConfigurableComponent; +class Property; + +} /* namespace core */ + +namespace utils { + +class ValueException: public Exception{ + private: + explicit ValueException(const std::string& err): Exception(ExceptionType::GENERAL_EXCEPTION, err) {} + explicit ValueException(const char* err): Exception(ExceptionType::GENERAL_EXCEPTION, err) {} + + // base class already has a virtual destructor + + friend class ParseException; + friend class ConversionException; + friend class InvalidValueException; +}; Review comment: I wanted the API as tight as possible, introducing new classes that are up for grabs is rarely beneficial, especially with the new major release coming up we should be extra careful what unremovable stuff we introduce, this clearly indicates that only we should be extending these classes 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
adamdebreceni commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440831812 ## File path: libminifi/include/core/state/Value.h ## @@ -86,35 +87,57 @@ class Value { } virtual bool getValue(uint32_t ) { -const auto negative = string_value.find_first_of('-') != std::string::npos; - if (negative) { - return false; - } -ref = std::stoul(string_value); +try { + uint32_t value; + utils::ValueParser(string_value).parseUInt32(value).parseEnd(); + ref = value; +} catch(const utils::ParseException&) { + return false; +} Review comment: they are not ment to be more general, they are ment to be correct, all these conversion methods are incorrect as they all happily convert `"1banana"` to `1` 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] szaszm commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
szaszm commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440829307 ## File path: libminifi/include/core/CachedValueValidator.h ## @@ -0,0 +1,103 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H +#define NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H + +#include "PropertyValidation.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace core { + +class CachedValueValidator{ + public: + enum class Result { +FAILURE, +SUCCESS, +RECOMPUTE + }; + + CachedValueValidator() = default; + CachedValueValidator(const CachedValueValidator& other) : validator_(other.validator_) {} + CachedValueValidator(CachedValueValidator&& other) noexcept : validator_(std::move(other.validator_)) {} Review comment: In my understanding, when I move construct something, I want the other object's content in the new object and preferably leave the other object in a somewhat valid state. (There is no clear consensus in the community about the last part as far as I'm aware.) What happens here is we take the validator, but not the cached result. This way after a move, we are forced to redo the validation, and I assume this is somewhat expensive, otherwise we wouldn't need a cache. In the other object, we leave a moved-from validator with a validation result that no longer corresponds to the validator, and is therefore invalid. Given the above, this seems less than ideal, but it's possible that I didn't fully understand your point and the code. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
adamdebreceni commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440827688 ## File path: extensions/coap/controllerservice/CoapConnector.cpp ## @@ -39,7 +39,7 @@ static core::Property RemoteServer; static core::Property Port; static core::Property MaxQueueSize; -core::Property CoapConnectorService::RemoteServer(core::PropertyBuilder::createProperty("Remote Server")->withDescription("Remote CoAP server")->isRequired(true)->build()); +core::Property CoapConnectorService::RemoteServer(core::PropertyBuilder::createProperty("Remote Server")->withDescription("Remote CoAP server")->isRequired(false)->build()); Review comment: one of the tests did not provide the property and failed, from the code it seems like this service can handle it not being set ``` void CoapConnectorService::onEnable() { std::string port_str; if (getProperty(RemoteServer.getName(), host_) && !host_.empty() && getProperty(Port.getName(), port_str) && !port_str.empty()) { core::Property::StringToInt(port_str, port_); } else { // this is the case where we aren't being used in the context of a single controller service. if (configuration_->get("nifi.c2.agent.coap.host", host_) && configuration_->get("nifi.c2.agent.coap.port", port_str)) { core::Property::StringToInt(port_str, port_); } } } ``` 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
adamdebreceni commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440823993 ## File path: libminifi/include/core/CachedValueValidator.h ## @@ -0,0 +1,103 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H +#define NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H + +#include "PropertyValidation.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace core { + +class CachedValueValidator{ + public: + enum class Result { +FAILURE, +SUCCESS, +RECOMPUTE + }; + + CachedValueValidator() = default; + CachedValueValidator(const CachedValueValidator& other) : validator_(other.validator_) {} + CachedValueValidator(CachedValueValidator&& other) noexcept : validator_(std::move(other.validator_)) {} Review comment: I generally like to take only what I use and making it as explicit as possible, instead of adjusting the effects after the fact, but if you think this would improve the readability I could make the change 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (MINIFICPP-1257) PublishKafka should not leak messages on failed produce
[ https://issues.apache.org/jira/browse/MINIFICPP-1257?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marton Szasz updated MINIFICPP-1257: Issue Type: Bug (was: Improvement) > PublishKafka should not leak messages on failed produce > --- > > Key: MINIFICPP-1257 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1257 > Project: Apache NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Marton Szasz >Assignee: Marton Szasz >Priority: Blocker > Fix For: 0.8.0 > > Time Spent: 50m > Remaining Estimate: 0h > > On failure `rd_kafka_producev` doesn't call > PublishKafka::messageDeliveryCallback, which takes ownership of the messages, > leaking the whole batch if any of the deliveries fail. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (MINIFICPP-1257) PublishKafka should not leak messages on failed produce
[ https://issues.apache.org/jira/browse/MINIFICPP-1257?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marton Szasz resolved MINIFICPP-1257. - Resolution: Fixed > PublishKafka should not leak messages on failed produce > --- > > Key: MINIFICPP-1257 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1257 > Project: Apache NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Marton Szasz >Assignee: Marton Szasz >Priority: Blocker > Fix For: 0.8.0 > > Time Spent: 50m > Remaining Estimate: 0h > > On failure `rd_kafka_producev` doesn't call > PublishKafka::messageDeliveryCallback, which takes ownership of the messages, > leaking the whole batch if any of the deliveries fail. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (MINIFICPP-1260) Make void_t in GeneralUtils forward-compabilble with C++17
[ https://issues.apache.org/jira/browse/MINIFICPP-1260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marton Szasz resolved MINIFICPP-1260. - Resolution: Fixed > Make void_t in GeneralUtils forward-compabilble with C++17 > -- > > Key: MINIFICPP-1260 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1260 > Project: Apache NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Marton Szasz >Assignee: Marton Szasz >Priority: Trivial > Time Spent: 0.5h > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi-minifi-cpp] szaszm commented on pull request #816: MINIFICPP-1261 - Refactor non-trivial usages of ScopeGuard class
szaszm commented on pull request #816: URL: https://github.com/apache/nifi-minifi-cpp/pull/816#issuecomment-644736318 The CI failures look legit and relevant 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] szaszm commented on a change in pull request #797: MINIFICPP-1231 - General property validation + use them in MergeContent.
szaszm commented on a change in pull request #797: URL: https://github.com/apache/nifi-minifi-cpp/pull/797#discussion_r440784872 ## File path: libminifi/include/utils/PropertyErrors.h ## @@ -0,0 +1,115 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenseas/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef LIBMINIFI_INCLUDE_UTILS_PROPERTYERRORS_H_ +#define LIBMINIFI_INCLUDE_UTILS_PROPERTYERRORS_H_ + +#include + +#include "Exception.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { + +namespace core { + +class PropertyValue; +class ConfigurableComponent; +class Property; + +} /* namespace core */ + +namespace utils { + +class ValueException: public Exception{ + private: + explicit ValueException(const std::string& err): Exception(ExceptionType::GENERAL_EXCEPTION, err) {} + explicit ValueException(const char* err): Exception(ExceptionType::GENERAL_EXCEPTION, err) {} + + // base class already has a virtual destructor + + friend class ParseException; + friend class ConversionException; + friend class InvalidValueException; +}; Review comment: This approach seems to violate the Open-closed principle. I don't mind it, as I'm not a big fan of its "open" part, but I'm interested why did you choose this approach over `protected` constructors. ## File path: libminifi/include/core/CachedValueValidator.h ## @@ -0,0 +1,103 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H +#define NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H + +#include "PropertyValidation.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace core { + +class CachedValueValidator{ + public: + enum class Result { +FAILURE, +SUCCESS, +RECOMPUTE + }; + + CachedValueValidator() = default; + CachedValueValidator(const CachedValueValidator& other) : validator_(other.validator_) {} + CachedValueValidator(CachedValueValidator&& other) noexcept : validator_(std::move(other.validator_)) {} Review comment: Instead of taking over the `validator_` but leaving the `validation_result_` in place, why don't we take over both and reset `other.validation_result_` to the default `RECOMPUTE`? ## File path: libminifi/include/core/CachedValueValidator.h ## @@ -0,0 +1,103 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H +#define NIFI_MINIFI_CPP_CACHEDVALUEVALIDATOR_H + +#include "PropertyValidation.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace core { + +class CachedValueValidator{ + public: + enum class Result { +FAILURE, +
[GitHub] [nifi-minifi-cpp] hunyadi-dev commented on a change in pull request #809: MINIFICPP-1254 - Introduce optional-lite
hunyadi-dev commented on a change in pull request #809: URL: https://github.com/apache/nifi-minifi-cpp/pull/809#discussion_r440793037 ## File path: libminifi/include/utils/OptionalUtils.h ## @@ -0,0 +1,46 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef LIBMINIFI_INCLUDE_UTILS_OPTIONALUTILS_H_ +#define LIBMINIFI_INCLUDE_UTILS_OPTIONALUTILS_H_ + +#include + +#include +#include "utils/gsl.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace utils { +using nonstd::optional; +using nonstd::nullopt; + +template +optional::type> optional_from_nullable(T&& obj) { + return obj ? optional::type>{ std::forward(obj) } : nullopt; Review comment: Updated the function to work on pointer types only. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] hunyadi-dev commented on a change in pull request #809: MINIFICPP-1254 - Introduce optional-lite
hunyadi-dev commented on a change in pull request #809: URL: https://github.com/apache/nifi-minifi-cpp/pull/809#discussion_r440792716 ## File path: libminifi/include/utils/GeneralUtils.h ## @@ -64,6 +64,7 @@ using std::exchange; #if __cplusplus < 201703L template using void_t = void; + Review comment: My central remote is called `central`. It won't work. Jk, updated. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Resolved] (MINIFICPP-1153) Nanofi CTailFile tests use the same input file
[ https://issues.apache.org/jira/browse/MINIFICPP-1153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ferenc Gerlits resolved MINIFICPP-1153. --- Resolution: Fixed > Nanofi CTailFile tests use the same input file > -- > > Key: MINIFICPP-1153 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1153 > Project: Apache NiFi MiNiFi C++ > Issue Type: Improvement >Affects Versions: 0.7.0 >Reporter: Arpad Boda >Assignee: Ferenc Gerlits >Priority: Major > Fix For: 0.8.0 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > All these testcases use a file named "e.txt" in cwd, which often results in > failures. > Should use properly generated tempfiles. > Another problem is that the repositories (flow files, provenance etc) are > also in the current working directory, and are also named the same in these > two tests. > To avoid both problems, create a temp directory and cd into it before running > each test. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Issue Comment Deleted] (MINIFICPP-1153) Nanofi CTailFile tests use the same input file
[ https://issues.apache.org/jira/browse/MINIFICPP-1153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ferenc Gerlits updated MINIFICPP-1153: -- Comment: was deleted (was: GitHub pull request https://github.com/apache/nifi-minifi-cpp/pull/815) > Nanofi CTailFile tests use the same input file > -- > > Key: MINIFICPP-1153 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1153 > Project: Apache NiFi MiNiFi C++ > Issue Type: Improvement >Affects Versions: 0.7.0 >Reporter: Arpad Boda >Assignee: Ferenc Gerlits >Priority: Major > Fix For: 0.8.0 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > All these testcases use a file named "e.txt" in cwd, which often results in > failures. > Should use properly generated tempfiles. > Another problem is that the repositories (flow files, provenance etc) are > also in the current working directory, and are also named the same in these > two tests. > To avoid both problems, create a temp directory and cd into it before running > each test. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (MINIFICPP-1153) Nanofi CTailFile tests use the same input file
[ https://issues.apache.org/jira/browse/MINIFICPP-1153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ferenc Gerlits updated MINIFICPP-1153: -- Description: All these testcases use a file named "e.txt" in cwd, which often results in failures. Should use properly generated tempfiles. Another problem is that the repositories (flow files, provenance etc) are also in the current working directory, and are also named the same in these two tests. To avoid both problems, create a temp directory and cd into it before running each test. was: All these testcases use a file named "e.txt" in cwd, which often results in failures. Should use properly generated tempfiles. > Nanofi CTailFile tests use the same input file > -- > > Key: MINIFICPP-1153 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1153 > Project: Apache NiFi MiNiFi C++ > Issue Type: Improvement >Affects Versions: 0.7.0 >Reporter: Arpad Boda >Assignee: Ferenc Gerlits >Priority: Major > Fix For: 0.8.0 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > All these testcases use a file named "e.txt" in cwd, which often results in > failures. > Should use properly generated tempfiles. > Another problem is that the repositories (flow files, provenance etc) are > also in the current working directory, and are also named the same in these > two tests. > To avoid both problems, create a temp directory and cd into it before running > each test. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (MINIFICPP-1153) Nanofi CTailFile tests use the same input file
[ https://issues.apache.org/jira/browse/MINIFICPP-1153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17136520#comment-17136520 ] Ferenc Gerlits commented on MINIFICPP-1153: --- GitHub pull request https://github.com/apache/nifi-minifi-cpp/pull/815 > Nanofi CTailFile tests use the same input file > -- > > Key: MINIFICPP-1153 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1153 > Project: Apache NiFi MiNiFi C++ > Issue Type: Improvement >Affects Versions: 0.7.0 >Reporter: Arpad Boda >Assignee: Ferenc Gerlits >Priority: Major > Fix For: 0.8.0 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > All these testcases use a file named "e.txt" in cwd, which often results in > failures. > Should use properly generated tempfiles. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi-minifi-cpp] szaszm commented on a change in pull request #809: MINIFICPP-1254 - Introduce optional-lite
szaszm commented on a change in pull request #809: URL: https://github.com/apache/nifi-minifi-cpp/pull/809#discussion_r440734888 ## File path: libminifi/include/utils/GeneralUtils.h ## @@ -64,6 +64,7 @@ using std::exchange; #if __cplusplus < 201703L template using void_t = void; + Review comment: Could you reset this file to master? `git fetch apache && git checkout apache/master -- libminifi/include/utils/GeneralUtils.h` 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] szaszm commented on a change in pull request #809: MINIFICPP-1254 - Introduce optional-lite
szaszm commented on a change in pull request #809: URL: https://github.com/apache/nifi-minifi-cpp/pull/809#discussion_r440733698 ## File path: libminifi/include/utils/OptionalUtils.h ## @@ -0,0 +1,46 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef LIBMINIFI_INCLUDE_UTILS_OPTIONALUTILS_H_ +#define LIBMINIFI_INCLUDE_UTILS_OPTIONALUTILS_H_ + +#include + +#include +#include "utils/gsl.h" + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace utils { +using nonstd::optional; +using nonstd::nullopt; + +template +optional::type> optional_from_nullable(T&& obj) { + return obj ? optional::type>{ std::forward(obj) } : nullopt; Review comment: This should be a comparison against `nullptr`. Normally I prefer pointer-like objects to be checked with `bool` conversion, but this template is too generic and I wouldn't want an empty `optional` on any object that's convertible to `bool` and takes the value `false`. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] hunyadi-dev opened a new pull request #816: MINIFICPP-1261 - Refactor non-trivial usages of ScopeGuard class
hunyadi-dev opened a new pull request #816: URL: https://github.com/apache/nifi-minifi-cpp/pull/816 Thank you for submitting a contribution to Apache NiFi - MiNiFi C++. 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 MINIFICPP- 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: - [ ] 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? - [ ] If applicable, have you updated the NOTICE file? ### 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. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (MINIFICPP-1261) Remove obsolete ScopeGuard class
Adam Hunyadi created MINIFICPP-1261: --- Summary: Remove obsolete ScopeGuard class Key: MINIFICPP-1261 URL: https://issues.apache.org/jira/browse/MINIFICPP-1261 Project: Apache NiFi MiNiFi C++ Issue Type: Improvement Affects Versions: 0.7.0 Reporter: Adam Hunyadi Assignee: Adam Hunyadi Fix For: 0.8.0 *Background:* With the introduction of the gsl support library, we ported tools that work as sufficient substitute for scope guards. *Proposal:* Replace ScopeGuard objects with unique_ptrs and gsl::final_action objects. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (NIFI-5819) JDBCCommon does not handle converting SQLServer sql_variant type to avro
[ https://issues.apache.org/jira/browse/NIFI-5819?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17136441#comment-17136441 ] GAbor Bilicz commented on NIFI-5819: It's a Problem on NiFi avro level. There should be an option to convert/try to convert all unknow SQLTypes to string. I have the same Problem with QueryDatabaseTable too. > JDBCCommon does not handle converting SQLServer sql_variant type to avro > > > Key: NIFI-5819 > URL: https://issues.apache.org/jira/browse/NIFI-5819 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.8.0 >Reporter: Charlie Meyer >Priority: Major > > If i run a query using executesqlrecord against a mssql database such as > {{SELECT SERVERPROPERTY ('ProductVersion') AS MajorVersion}} nifi logs the > following stack trace: > {code:java} > { "cause": { "cause": null, "stackTrace": [ { "methodName": "createSchema", > "fileName": "JdbcCommon.java", "lineNumber": 677, "className": > "org.apache.nifi.processors.standard.util.JdbcCommon", "nativeMethod": false > }, { "methodName": "writeResultSet", "fileName": "RecordSqlWriter.java", > "lineNumber": 68, "className": > "org.apache.nifi.processors.standard.sql.RecordSqlWriter", "nativeMethod": > false }, { "methodName": "lambda$onTrigger$1", "fileName": > "ExecuteSqlRecordWithoutSwallowingErrors.java", "lineNumber": 362, > "className": > "com.civitaslearning.collect.nifi.processor.ExecuteSqlRecordWithoutSwallowingErrors", > "nativeMethod": false }, { "methodName": "write", "fileName": > "StandardProcessSession.java", "lineNumber": 2648, "className": > "org.apache.nifi.controller.repository.StandardProcessSession", > "nativeMethod": false }, { "methodName": "onTrigger", "fileName": > "ExecuteSqlRecordWithoutSwallowingErrors.java", "lineNumber": 360, > "className": > "com.civitaslearning.collect.nifi.processor.ExecuteSqlRecordWithoutSwallowingErrors", > "nativeMethod": false }, { "methodName": "onTrigger", "fileName": > "AbstractProcessor.java", "lineNumber": 27, "className": > "org.apache.nifi.processor.AbstractProcessor", "nativeMethod": false }, { > "methodName": "onTrigger", "fileName": "StandardProcessorNode.java", > "lineNumber": 1165, "className": > "org.apache.nifi.controller.StandardProcessorNode", "nativeMethod": false }, > { "methodName": "invoke", "fileName": "ConnectableTask.java", "lineNumber": > 203, "className": "org.apache.nifi.controller.tasks.ConnectableTask", > "nativeMethod": false }, { "methodName": "run", "fileName": > "TimerDrivenSchedulingAgent.java", "lineNumber": 117, "className": > "org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1", > "nativeMethod": false }, { "methodName": "call", "fileName": > "Executors.java", "lineNumber": 511, "className": > "java.util.concurrent.Executors$RunnableAdapter", "nativeMethod": false }, { > "methodName": "runAndReset", "fileName": "FutureTask.java", "lineNumber": > 308, "className": "java.util.concurrent.FutureTask", "nativeMethod": false }, > { "methodName": "access$301", "fileName": "ScheduledThreadPoolExecutor.java", > "lineNumber": 180, "className": > "java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask", > "nativeMethod": false }, { "methodName": "run", "fileName": > "ScheduledThreadPoolExecutor.java", "lineNumber": 294, "className": > "java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask", > "nativeMethod": false }, { "methodName": "runWorker", "fileName": > "ThreadPoolExecutor.java", "lineNumber": 1149, "className": > "java.util.concurrent.ThreadPoolExecutor", "nativeMethod": false }, { > "methodName": "run", "fileName": "ThreadPoolExecutor.java", "lineNumber": > 624, "className": "java.util.concurrent.ThreadPoolExecutor$Worker", > "nativeMethod": false }, { "methodName": "run", "fileName": "Thread.java", > "lineNumber": 748, "className": "java.lang.Thread", "nativeMethod": false } > ], "message": "createSchema: Unknown SQL type -156 / sql_variant (table: > NiFi_ExecuteSQL_Record, column: MajorVersion) cannot be converted to Avro > type", "localizedMessage": "createSchema: Unknown SQL type -156 / sql_variant > (table: NiFi_ExecuteSQL_Record, column: MajorVersion) cannot be converted to > Avro type", "suppressed": [] }, "stackTrace": [ { "methodName": > "lambda$onTrigger$1", "fileName": > "ExecuteSqlRecordWithoutSwallowingErrors.java", "lineNumber": 364, > "className": > "com.civitaslearning.collect.nifi.processor.ExecuteSqlRecordWithoutSwallowingErrors", > "nativeMethod": false }, { "methodName": "write", "fileName": > "StandardProcessSession.java", "lineNumber": 2648, "className": > "org.apache.nifi.controller.repository.StandardProcessSession", > "nativeMethod": false }, { "methodName":
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on pull request #808: MINIFICPP-1234 - Enable all archive tests on Windows.
adamdebreceni commented on pull request #808: URL: https://github.com/apache/nifi-minifi-cpp/pull/808#issuecomment-644573503 No it does not depend on #797, it depended on #788 and #792 (both of which are closed) 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Resolved] (MINIFICPP-1255) Always have non-zero default timeout for network operations.
[ https://issues.apache.org/jira/browse/MINIFICPP-1255?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adam Debreceni resolved MINIFICPP-1255. --- Assignee: Adam Debreceni Resolution: Fixed > Always have non-zero default timeout for network operations. > > > Key: MINIFICPP-1255 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1255 > Project: Apache NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Adam Debreceni >Assignee: Adam Debreceni >Priority: Minor > Time Spent: 0.5h > Remaining Estimate: 0h > > Configure the curl requests with a default timeout and also enable an > absolute timeout, besides the progressMeter. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[GitHub] [nifi] naru014 edited a comment on pull request #3511: NIFI-6175 Spark Livy - Improving Livy
naru014 edited a comment on pull request #3511: URL: https://github.com/apache/nifi/pull/3511#issuecomment-644564279 > @naru014 Yes, it can. It also includes Batch processing controller service/processor. The one that comes with NiFi currently has severe limitations. I keep forgetting to get this one merged. I just need to update it for the latest version of NiFI. @patricker Thank you. We have got this built and included in the nifi. But when using a livy session controller service per nifi flow, the flows in some cases dont use the session created by the controller for that flow, but any other available session. Is this expected? So currently instead of creating a livy session controller per flow, I have created one livy session controller on the parent nifi-flow and it is inherited by all the child flows. By doing that, the nifi cluster has say min 2 sessions available and is used by any running flow based on its availability. Please let me know if there is a better way to use it. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] naru014 commented on pull request #3511: NIFI-6175 Spark Livy - Improving Livy
naru014 commented on pull request #3511: URL: https://github.com/apache/nifi/pull/3511#issuecomment-644564279 > @naru014 Yes, it can. It also includes Batch processing controller service/processor. The one that comes with NiFi currently has severe limitations. I keep forgetting to get this one merged. I just need to update it for the latest version of NiFI. @patricker Thank you. We have got this build and included in the nifi. But when using a livy session controller service per nifi flow, the flows in some cases dont use the session created by the controller for that flow, but any other available session. Is this expected? So currently instead of creating a livy session controller per flow, I have created one livy session controller on the parent nifi-flow and it is inherited by all the child flows. By doing that, the nifi cluster has say min 2 sessions available and is used by any running flow based on its availability. Please let me know if there is a better way to use it. 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org