[GitHub] [nifi] timeabarna opened a new pull request #5582: NIFI-9455 Add json output for Prometheus metrics with basic filtering…
timeabarna opened a new pull request #5582: URL: https://github.com/apache/nifi/pull/5582 https://issues.apache.org/jira/browse/NIFI-9455 Description of PR Enables exposing Prometheus metrics in json Enables basic filtering for Sample names and Sample values Adding root level aggregated prediction metrics 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 `main`)? - [ ] 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Assigned] (NIFI-9455) Add json output for Prometheus metrics and aggregated predictions
[ https://issues.apache.org/jira/browse/NIFI-9455?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Timea Barna reassigned NIFI-9455: - Assignee: Timea Barna > Add json output for Prometheus metrics and aggregated predictions > - > > Key: NIFI-9455 > URL: https://issues.apache.org/jira/browse/NIFI-9455 > Project: Apache NiFi > Issue Type: Improvement >Reporter: Timea Barna >Assignee: Timea Barna >Priority: Major > > Add json output format endpoint for Prometheus metrics > Add a basic filtering option for the json output > Add aggregated prediction metrics to Prometheus -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (NIFI-9455) Add json output for Prometheus metrics and aggregated predictions
Timea Barna created NIFI-9455: - Summary: Add json output for Prometheus metrics and aggregated predictions Key: NIFI-9455 URL: https://issues.apache.org/jira/browse/NIFI-9455 Project: Apache NiFi Issue Type: Improvement Reporter: Timea Barna Add json output format endpoint for Prometheus metrics Add a basic filtering option for the json output Add aggregated prediction metrics to Prometheus -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi-minifi-cpp] szaszm commented on a change in pull request #1208: MINIFICPP-1678 Create PutUDP processor
szaszm commented on a change in pull request #1208: URL: https://github.com/apache/nifi-minifi-cpp/pull/1208#discussion_r764509172 ## File path: libminifi/include/utils/expected.h ## @@ -0,0 +1,176 @@ +/** + * 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. + */ +#pragma once +#include +#include +#include "nonstd/expected.hpp" +#include "utils/detail/MonadicOperationWrappers.h" +#include "utils/GeneralUtils.h" +#include "utils/meta/detected.h" + +namespace org::apache::nifi::minifi::utils { +namespace detail { + +template +inline constexpr bool is_expected_v = false; + +template +inline constexpr bool is_expected_v> = true; + +// map implementation +template>>> +auto operator|(Expected&& object, map_wrapper f) { Review comment: I didn't bother with noexcept as it would've required even more metaprogramming, I would've needed to basically duplicate the implementation inside the noexcept specifier. There is a lot of code duplication inside the implementation, but I think this is the simplest way to do it. I could use `if constexpr` instead of SFINAE a lot, so I think it should also compile faster, but I don't want to implement them twice to measure. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org 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 #1208: MINIFICPP-1678 Create PutUDP processor
szaszm commented on a change in pull request #1208: URL: https://github.com/apache/nifi-minifi-cpp/pull/1208#discussion_r764506451 ## File path: extensions/expression-language/ProcessContextExpr.cpp ## @@ -54,9 +56,11 @@ bool ProcessContextExpr::getDynamicProperty(const Property , std::strin ProcessContext::getDynamicProperty(name, expression_str); logger_->log_debug("Compiling expression for %s/%s: %s", getProcessorNode()->getName(), name, expression_str); dynamic_property_expressions_.emplace(name, expression::compile(expression_str)); +expression_strs_.insert_or_assign(name, expression_str); } minifi::expression::Parameters p(shared_from_this(), flow_file); value = dynamic_property_expressions_[name](p).asString(); + logger_->log_debug(R"(expression "%s" of dynamic property "%s" evaluated to: %s)", expression_strs_[name], name, value); Review comment: This addition helped debugging expression language properties. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org 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 #1208: MINIFICPP-1678 Create PutUDP processor
szaszm commented on a change in pull request #1208: URL: https://github.com/apache/nifi-minifi-cpp/pull/1208#discussion_r764506130 ## File path: NOTICE ## @@ -58,6 +58,8 @@ This software includes third party software subject to the following copyrights: - IANA timezone database - public domain - date (HowardHinnant/date) - notices below - range-v3 - Eric Niebler and other contributors +- expected-lite - Copyright (C) 2016-2020 Martin Moene. +- TartanLlama/expected - public domain, thanks to Sy Brand Review comment: I copied the tests for the monadic extensions, not the implementation code itself. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] github-actions[bot] commented on pull request #4676: NIFI-8016: Support dynamic properties set on the DataSource in Hive connection pools
github-actions[bot] commented on pull request #4676: URL: https://github.com/apache/nifi/pull/4676#issuecomment-988361976 We're marking this PR as stale due to lack of updates in the past few months. If after another couple of weeks the stale label has not been removed this PR will be closed. This stale marker and eventual auto close does not indicate a judgement of the PR just lack of reviewer bandwidth and helps us keep the PR queue more manageable. If you would like this PR re-opened you can do so and a committer can remove the stale tag. Or you can open a new PR. Try to help review other PRs to increase PR review bandwidth which in turn helps yours. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mikayla-yang commented on a change in pull request #5518: NIFI-9333 add Geohash functions to Expression Language
mikayla-yang commented on a change in pull request #5518: URL: https://github.com/apache/nifi/pull/5518#discussion_r764426080 ## File path: nifi-commons/nifi-expression-language/pom.xml ## @@ -108,5 +108,10 @@ commons-codec 1.14 + +ch.hsr +geohash +1.4.0 Review comment: Please see [here](https://github.com/apache/nifi/pull/5476#discussion_r764415370) regarding the version update. An additional note on licensing: the NOTICE information is the same for [NIFI-9333](https://github.com/apache/nifi/pull/5518) and [NIFI-9259](https://github.com/apache/nifi/pull/5476), so NIFI-9333 can be merged after NIFI-9259 so that the information is included. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mikayla-yang commented on a change in pull request #5518: NIFI-9333 add Geohash functions to Expression Language
mikayla-yang commented on a change in pull request #5518: URL: https://github.com/apache/nifi/pull/5518#discussion_r764426080 ## File path: nifi-commons/nifi-expression-language/pom.xml ## @@ -108,5 +108,10 @@ commons-codec 1.14 + +ch.hsr +geohash +1.4.0 Review comment: Please see [here](https://github.com/apache/nifi/pull/5476#discussion_r764415370) regarding the version update. An additional note for licensing: the NOTICE information is the same for [NIFI-9333](https://github.com/apache/nifi/pull/5518) and [NIFI-9259](https://github.com/apache/nifi/pull/5476), so NIFI-9333 can be merged after NIFI-9259 so that the information is included. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mikayla-yang commented on a change in pull request #5518: NIFI-9333 add Geohash functions to Expression Language
mikayla-yang commented on a change in pull request #5518: URL: https://github.com/apache/nifi/pull/5518#discussion_r764426080 ## File path: nifi-commons/nifi-expression-language/pom.xml ## @@ -108,5 +108,10 @@ commons-codec 1.14 + +ch.hsr +geohash +1.4.0 Review comment: Please see [here](https://github.com/apache/nifi/pull/5476#discussion_r764415370) regarding the version update. An additional notes for licensing: the NOTICE information is the same for [NIFI-9333](https://github.com/apache/nifi/pull/5518) and [NIFI-9259](https://github.com/apache/nifi/pull/5476), so NIFI-9333 can be merged after NIFI-9259 so that the information is included. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mikayla-yang commented on a change in pull request #5476: NIFI-9259: Adding GeohashRecord Processor
mikayla-yang commented on a change in pull request #5476: URL: https://github.com/apache/nifi/pull/5476#discussion_r764415370 ## File path: nifi-nar-bundles/nifi-geohash-bundle/nifi-geohash-processors/pom.xml ## @@ -0,0 +1,99 @@ + + +http://maven.apache.org/POM/4.0.0; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + + +org.apache.nifi +nifi-geohash-bundle +1.16.0-SNAPSHOT + + +nifi-geohash-processors +jar + + + +org.apache.nifi +nifi-api + + +org.apache.nifi +nifi-utils +1.16.0-SNAPSHOT + + +ch.hsr +geohash +1.4.0 Review comment: Hi @ChrisSamo632, thank you for pointing this out! Since this latest 1.5.0 version is not available in the [maven repository](https://mvnrepository.com/artifact/ch.hsr/geohash) yet, I've reached out to @markap14 and @YolandaMDavis for suggestions regarding this. We think it could be onerous to use 1.5.0 now outside of maven given that the functionalities we currently use are not changing between 1.4.0 and 1.5.0. We could update the version once it is available. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mikayla-yang commented on a change in pull request #5476: NIFI-9259: Adding GeohashRecord Processor
mikayla-yang commented on a change in pull request #5476: URL: https://github.com/apache/nifi/pull/5476#discussion_r764415370 ## File path: nifi-nar-bundles/nifi-geohash-bundle/nifi-geohash-processors/pom.xml ## @@ -0,0 +1,99 @@ + + +http://maven.apache.org/POM/4.0.0; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + + +org.apache.nifi +nifi-geohash-bundle +1.16.0-SNAPSHOT + + +nifi-geohash-processors +jar + + + +org.apache.nifi +nifi-api + + +org.apache.nifi +nifi-utils +1.16.0-SNAPSHOT + + +ch.hsr +geohash +1.4.0 Review comment: Hi @ChrisSamo632, thank you for pointing this out! Since this latest 1.5.0 version is not available in the [maven repository](https://mvnrepository.com/artifact/ch.hsr/geohash) yet, I've reached out to @markap14 and @YolandaMDavis for suggestions regarding this. We think it could be onerous to use 1.5.0 now outside of maven given that the functionalities we currently use are not changing between 1.4.0 and 1.5.0. We could update the version once it is available(also see this [issue](https://github.com/kungfoo/geohash-java/issues/56)) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Commented] (NIFI-7900) Add AWS session token to AWSCredentialsProvider
[ https://issues.apache.org/jira/browse/NIFI-7900?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17454864#comment-17454864 ] Jeff Maaks commented on NIFI-7900: -- I'm also seeing this as a potential issue, explicitly when using MinIO configured with LDAP SSO. How would the AWSCredentialsProviderControllerService work around this? As originally noted above "While access key id and secret access key properties can be configured, the property "session token" is not available." – Can this not be added? > Add AWS session token to AWSCredentialsProvider > --- > > Key: NIFI-7900 > URL: https://issues.apache.org/jira/browse/NIFI-7900 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.9.2, 1.12.1 >Reporter: Jody >Assignee: Peter Turcsanyi >Priority: Major > > As a NiFi user, I want to use AWS processors, e.g. PutS3Object processor, > with temporary credentials to allow connecting to secure AWS environments > that make use of the AWS Security Token Service. > > The NiFi AWSCredentialsProviderControllerService is giving an option to add > the required fields for using temporary credentials. While access key id and > secret access key properties can be configured, the property "session token" > is not available. The session token property must be provided when temporary > credentials are used. If the session token is not presented, an error will be > thrown: "The AWS Access Key Id you provided does not exist in our records. > (Service: Amazon S3; Status Code: 403; Error Code: InvalidAccessKeyId" -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (NIFI-9454) StandardFlowConfigurationDAO: FileUtils cannot rename file while OutputStream is open
[ https://issues.apache.org/jira/browse/NIFI-9454?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lehel Boér updated NIFI-9454: - Status: Patch Available (was: In Progress) > StandardFlowConfigurationDAO: FileUtils cannot rename file while OutputStream > is open > - > > Key: NIFI-9454 > URL: https://issues.apache.org/jira/browse/NIFI-9454 > Project: Apache NiFi > Issue Type: Bug >Reporter: Lehel Boér >Assignee: Lehel Boér >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > When started NiFi on windows the following exception appeared in the logs and > NiFi didn't start. > {quote}{{org.apache.nifi.web.NiFiCoreException: Unable to start Flow > Controller.Caused by: java.io.IOException: Attempted 5 times but unable to > rename from '.\conf\flow.json.gz.temp.gz' to '.\conf\flow.json.gz'}} > {{at org.apache.nifi.util.file.FileUtils.renameFile(FileUtils.java:503)}} > {{at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveFlow(StandardFlowConfigurationDAO.java:211)}} > {{at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveJson(StandardFlowConfigurationDAO.java:193)}} > {{at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.save(StandardFlowConfigurationDAO.java:187)}} > {{at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.load(StandardFlowConfigurationDAO.java:114)}} > {{at > org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:804)}} > {{at > org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:533)}} > {{at > org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:67)}} > {{... 38 common frames omitted}} > {quote} > > {{In FileUtils I changed the Files::renameTo to Files::move as the Javadoc > suggested and I got the following exception:}} > {quote}{{Caused by: java.nio.file.FileSystemException: > .\conf\flow.json.gz.temp.gz -> .\conf\flow.json.gz: The process cannot access > the file because it is being used by another process. > at > sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86) > at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97) > at sun.nio.fs.WindowsFileCopy.move(WindowsFileCopy.java:301) > at > sun.nio.fs.WindowsFileSystemProvider.move(WindowsFileSystemProvider.java:287) > at java.nio.file.Files.move(Files.java:1395) > at org.apache.nifi.util.file.FileUtils.renameFile(FileUtils.java:496) > at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveFlow(StandardFlowConfigurationDAO.java:211) > at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveJson(StandardFlowConfigurationDAO.java:193) > at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.save(StandardFlowConfigurationDAO.java:187) > at > org.apache.nifi.persistence.StandardFlowConfigurationDAO.load(StandardFlowConfigurationDAO.java:114) > at > org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:804) > at > org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:533) > at > org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:67) > ... 38 common frames omitted}} > {quote} > The file was solely being used by NiFi's java process, according to Windows' > Resource Monitor. [~markap14] pointed out that the outputstream in > StandardFlowConfigurationDAO is still open when the file is renamed. The > issue should be resolved by moving the renaming after closing the > outputstream. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] Lehel44 opened a new pull request #5581: NIFI-9454: Moved file renaming after closing the OutputStream
Lehel44 opened a new pull request #5581: URL: https://github.com/apache/nifi/pull/5581 Thank you for submitting a contribution to Apache NiFi. Please provide a short description of the PR here: Description of PR https://issues.apache.org/jira/browse/NIFI-9454 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 `main`)? - [ ] 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-9454) StandardFlowConfigurationDAO: FileUtils cannot rename file while OutputStream is open
Lehel Boér created NIFI-9454: Summary: StandardFlowConfigurationDAO: FileUtils cannot rename file while OutputStream is open Key: NIFI-9454 URL: https://issues.apache.org/jira/browse/NIFI-9454 Project: Apache NiFi Issue Type: Bug Reporter: Lehel Boér Assignee: Lehel Boér When started NiFi on windows the following exception appeared in the logs and NiFi didn't start. {quote}{{org.apache.nifi.web.NiFiCoreException: Unable to start Flow Controller.Caused by: java.io.IOException: Attempted 5 times but unable to rename from '.\conf\flow.json.gz.temp.gz' to '.\conf\flow.json.gz'}} {{at org.apache.nifi.util.file.FileUtils.renameFile(FileUtils.java:503)}} {{at org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveFlow(StandardFlowConfigurationDAO.java:211)}} {{at org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveJson(StandardFlowConfigurationDAO.java:193)}} {{at org.apache.nifi.persistence.StandardFlowConfigurationDAO.save(StandardFlowConfigurationDAO.java:187)}} {{at org.apache.nifi.persistence.StandardFlowConfigurationDAO.load(StandardFlowConfigurationDAO.java:114)}} {{at org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:804)}} {{at org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:533)}} {{at org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:67)}} {{... 38 common frames omitted}} {quote} {{In FileUtils I changed the Files::renameTo to Files::move as the Javadoc suggested and I got the following exception:}} {quote}{{Caused by: java.nio.file.FileSystemException: .\conf\flow.json.gz.temp.gz -> .\conf\flow.json.gz: The process cannot access the file because it is being used by another process. at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86) at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97) at sun.nio.fs.WindowsFileCopy.move(WindowsFileCopy.java:301) at sun.nio.fs.WindowsFileSystemProvider.move(WindowsFileSystemProvider.java:287) at java.nio.file.Files.move(Files.java:1395) at org.apache.nifi.util.file.FileUtils.renameFile(FileUtils.java:496) at org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveFlow(StandardFlowConfigurationDAO.java:211) at org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveJson(StandardFlowConfigurationDAO.java:193) at org.apache.nifi.persistence.StandardFlowConfigurationDAO.save(StandardFlowConfigurationDAO.java:187) at org.apache.nifi.persistence.StandardFlowConfigurationDAO.load(StandardFlowConfigurationDAO.java:114) at org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:804) at org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:533) at org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:67) ... 38 common frames omitted}} {quote} The file was solely being used by NiFi's java process, according to Windows' Resource Monitor. [~markap14] pointed out that the outputstream in StandardFlowConfigurationDAO is still open when the file is renamed. The issue should be resolved by moving the renaming after closing the outputstream. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] MikeThomsen commented on pull request #5301: NIFI-8209 Added Neo4J 4.X and 3.X clients by splitting the current co…
MikeThomsen commented on pull request #5301: URL: https://github.com/apache/nifi/pull/5301#issuecomment-988239496 @mattyb149 ughh I'm running into really inconsistent documentation on how to enable SSL with Neo4J. Going to keep slogging through 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] tpalfy commented on pull request #5319: NIFI-9065 Add support for OAuth2AccessTokenProvider in InvokeHTTP.
tpalfy commented on pull request #5319: URL: https://github.com/apache/nifi/pull/5319#issuecomment-988168834 @exceptionfactory @MikeThomsen @pvillard31 @OlivierBondu Rebased to main. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Assigned] (NIFI-9453) Refactor ListenBeats to use Netty
[ https://issues.apache.org/jira/browse/NIFI-9453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Nathan Gough reassigned NIFI-9453: -- Assignee: Nathan Gough > Refactor ListenBeats to use Netty > - > > Key: NIFI-9453 > URL: https://issues.apache.org/jira/browse/NIFI-9453 > Project: Apache NiFi > Issue Type: Improvement >Reporter: Nathan Gough >Assignee: Nathan Gough >Priority: Major > > The ListenBeats processor uses a custom NiFi implementation of > SSLSocketChannel that we want to move way from maintaining. We are moving to > use Netty for network handling with this processor to reduce complicated code > we're maintaining and fix intermittent issues with our implementation. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (NIFI-9453) Refactor ListenBeats to use Netty
Nathan Gough created NIFI-9453: -- Summary: Refactor ListenBeats to use Netty Key: NIFI-9453 URL: https://issues.apache.org/jira/browse/NIFI-9453 Project: Apache NiFi Issue Type: Improvement Reporter: Nathan Gough The ListenBeats processor uses a custom NiFi implementation of SSLSocketChannel that we want to move way from maintaining. We are moving to use Netty for network handling with this processor to reduce complicated code we're maintaining and fix intermittent issues with our implementation. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (NIFI-9429) UI - Parameter values should allow blank values
[ https://issues.apache.org/jira/browse/NIFI-9429?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] M Tien updated NIFI-9429: - Status: Patch Available (was: In Progress) > UI - Parameter values should allow blank values > --- > > Key: NIFI-9429 > URL: https://issues.apache.org/jira/browse/NIFI-9429 > Project: Apache NiFi > Issue Type: Bug > Components: Core UI >Affects Versions: 1.15.0 >Reporter: M Tien >Assignee: M Tien >Priority: Minor > > When creating a parameter value, if a user enters only whitespace and did not > check the '{_}Set empty string{_}' checkbox, the parameter value is saved as > an empty string and the parameter table shows it as '{_}No value set'{_}. > We should allow blank parameter values. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (NIFI-9429) UI - Parameter values should allow blank values
[ https://issues.apache.org/jira/browse/NIFI-9429?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17454777#comment-17454777 ] M Tien commented on NIFI-9429: -- PR: https://github.com/apache/nifi/pull/5569 > UI - Parameter values should allow blank values > --- > > Key: NIFI-9429 > URL: https://issues.apache.org/jira/browse/NIFI-9429 > Project: Apache NiFi > Issue Type: Bug > Components: Core UI >Affects Versions: 1.15.0 >Reporter: M Tien >Assignee: M Tien >Priority: Minor > > When creating a parameter value, if a user enters only whitespace and did not > check the '{_}Set empty string{_}' checkbox, the parameter value is saved as > an empty string and the parameter table shows it as '{_}No value set'{_}. > We should allow blank parameter values. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (NIFI-9423) UI - Parameter values with leading or trailing whitespace
[ https://issues.apache.org/jira/browse/NIFI-9423?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] M Tien updated NIFI-9423: - Affects Version/s: 1.15.0 Status: Patch Available (was: In Progress) > UI - Parameter values with leading or trailing whitespace > - > > Key: NIFI-9423 > URL: https://issues.apache.org/jira/browse/NIFI-9423 > Project: Apache NiFi > Issue Type: New Feature > Components: Core UI >Affects Versions: 1.15.0 >Reporter: Matt Gilman >Assignee: M Tien >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > In NIFI-9336 we've introduced a capability to show when a Property contains > leading or trailing whitespace. We should introduce this same capability for > Parameter values. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] exceptionfactory commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
exceptionfactory commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764206818 ## File path: c2/c2-protocol/c2-protocol-api/pom.xml ## @@ -0,0 +1,38 @@ + + +http://maven.apache.org/POM/4.0.0; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + + +c2-protocol +org.apache.nifi +1.16.0-SNAPSHOT + + +c2-protocol-api Review comment: Thanks for the additional background, I agree, that sounds 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764205345 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/AgentRepositoryStatus.java ## @@ -0,0 +1,112 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.xml.bind.annotation.XmlTransient; + +@ApiModel +public class AgentRepositoryStatus implements Serializable { +private static final long serialVersionUID = 6563881979096175411L; + +@Min(0) +@Max(Long.MAX_VALUE) +private Long size; + +@Min(0) +@Max(Long.MAX_VALUE) +private Long sizeMax; + +@Min(0) +@Max(Long.MAX_VALUE) +private Long dataSize; + +@Min(0) +@Max(Long.MAX_VALUE) +private Long dataSizeMax; + +@ApiModelProperty(value = "The number of items in the repository", allowableValues = "range[0, 9223372036854775807]") +public Long getSize() { +return size; +} + +public void setSize(Long size) { +this.size = size; +} + +@ApiModelProperty(value = "The maximum number of items the repository is capable of storing", allowableValues = "range[0, 9223372036854775807]") +public Long getSizeMax() { +return sizeMax; +} + +public void setSizeMax(Long sizeMax) { +this.sizeMax = sizeMax; +} + +@ApiModelProperty(value = "The data size (in Bytes) of all items in the repository", allowableValues = "range[0, 9223372036854775807]") +public Long getDataSize() { +return dataSize; +} + +public void setDataSize(Long dataSize) { +this.dataSize = dataSize; +} + +@ApiModelProperty(value = "The maximum data size (in Bytes) that the repository is capable of storing", allowableValues = "range[0, 9223372036854775807]") +public Long getDataSizeMax() { +return dataSizeMax; +} + +public void setDataSizeMax(Long dataSizeMax) { +this.dataSizeMax = dataSizeMax; +} + +/** + * If sizeMax is set, returns a decimal between [0, 1] indicating the ratio + * of size to sizeMax. + * + * If size or sizeMax are null, this method return null. + * + * @return a decimal between [0, 1] representing the sizeMax utilization percentage + */ +@XmlTransient Review comment: Serialized yes, XML optionally -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] exceptionfactory commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
exceptionfactory commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764204935 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/AgentInfo.java ## @@ -0,0 +1,88 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.validation.constraints.NotBlank; + +@ApiModel +public class AgentInfo implements Serializable { +private static final long serialVersionUID = -8812289319080770084L; Review comment: Keeping `Serializable` and using an initial value of `1` sounds 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764204510 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/AgentRepositoryStatus.java ## @@ -0,0 +1,112 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.xml.bind.annotation.XmlTransient; + +@ApiModel +public class AgentRepositoryStatus implements Serializable { +private static final long serialVersionUID = 6563881979096175411L; + +@Min(0) +@Max(Long.MAX_VALUE) +private Long size; Review comment: These are used like the Serializable interface to support caching/serialization, but if we can do it better I'm all for 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764202621 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/AgentInfo.java ## @@ -0,0 +1,88 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.validation.constraints.NotBlank; + +@ApiModel +public class AgentInfo implements Serializable { +private static final long serialVersionUID = -8812289319080770084L; Review comment: I think we may want to enable a caching solution for these POJOs someday, so I'm thinking we could keep them in and set the versions 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764201954 ## File path: c2/c2-protocol/c2-protocol-api/pom.xml ## @@ -0,0 +1,38 @@ + + +http://maven.apache.org/POM/4.0.0; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + + +c2-protocol +org.apache.nifi +1.16.0-SNAPSHOT + + +c2-protocol-api Review comment: I envision this module being used by anyone that wants a straightforward solution to C2, so I'd like to keep it not specific to NiFi and keep the name without the prefix to strengthen that point. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (NIFI-9397) Add custom authorization to JettyWebSocketClient
[ https://issues.apache.org/jira/browse/NIFI-9397?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] David Handermann updated NIFI-9397: --- Fix Version/s: 1.16.0 Resolution: Fixed Status: Resolved (was: Patch Available) > Add custom authorization to JettyWebSocketClient > > > Key: NIFI-9397 > URL: https://issues.apache.org/jira/browse/NIFI-9397 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Simon Bence >Assignee: Simon Bence >Priority: Major > Fix For: 1.16.0 > > Time Spent: 1h 40m > Remaining Estimate: 0h > > Adding secure property which -in case of being set- is used as the value for > Authorization header. By this, services using different kind of auth (like > api key) can be reached using the controller service. > -Adding sensitive dynamic property support in the same manner it was > implemented in the > [DBCPConnectionPool|https://issues.apache.org/jira/browse/NIFI-8047]- (This > approach is not sercure as kindly highlighted by [~exceptionfactory]) -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (NIFI-9397) Add custom authorization to JettyWebSocketClient
[ https://issues.apache.org/jira/browse/NIFI-9397?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17454759#comment-17454759 ] ASF subversion and git services commented on NIFI-9397: --- Commit 12015a17dd93a1d42c9d6ddab6cc5ce606fef16a in nifi's branch refs/heads/main from Bence Simon [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=12015a1 ] NIFI-9397 Added Custom Authorization property to JettyWebSocketClient This closes #5574 Signed-off-by: David Handermann > Add custom authorization to JettyWebSocketClient > > > Key: NIFI-9397 > URL: https://issues.apache.org/jira/browse/NIFI-9397 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Simon Bence >Assignee: Simon Bence >Priority: Major > Time Spent: 1.5h > Remaining Estimate: 0h > > Adding secure property which -in case of being set- is used as the value for > Authorization header. By this, services using different kind of auth (like > api key) can be reached using the controller service. > -Adding sensitive dynamic property support in the same manner it was > implemented in the > [DBCPConnectionPool|https://issues.apache.org/jira/browse/NIFI-8047]- (This > approach is not sercure as kindly highlighted by [~exceptionfactory]) -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] exceptionfactory closed pull request #5574: NIFI-9397 Extending JettyWebSocketClient authorization possibilities with custom setup
exceptionfactory closed pull request #5574: URL: https://github.com/apache/nifi/pull/5574 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764181870 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/NetworkInfo.java ## @@ -0,0 +1,69 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.validation.constraints.Size; + +@ApiModel +public class NetworkInfo implements Serializable { +private static final long serialVersionUID = 6574362622904811901L; + +public static final int DEVICE_ID_SIZE = 200; +public static final int IP_ADDRESS_MAX_SIZE = 45; Review comment: Nope, just forethought in case they're needed, I can make them private for now if they're unused elsewhere. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764175514 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/C2Heartbeat.java ## @@ -0,0 +1,160 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.xml.bind.annotation.XmlTransient; +import org.apache.commons.lang3.builder.EqualsBuilder; +import org.apache.commons.lang3.builder.HashCodeBuilder; + +/** + * TODO add Builder interface + */ +@ApiModel +public class C2Heartbeat implements Serializable { +private static final long serialVersionUID = -1168790962754919591L; + +// Internal, not part of REST API +private String identifier; +private Long created; Review comment: I think only because we know it will be serialized since it's part of the protocol. If using date/time classes is more readable/maintainable, I can use those instead. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] exceptionfactory commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
exceptionfactory commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764175432 ## File path: c2/c2-protocol/c2-protocol-api/pom.xml ## @@ -0,0 +1,38 @@ + + +http://maven.apache.org/POM/4.0.0; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + + +c2-protocol +org.apache.nifi +1.16.0-SNAPSHOT + + +c2-protocol-api Review comment: Thanks for the reply. For clarification, this is intended to support not just MiNiFi, but be more generic across the board? MiNiFi modules seem to be the exception when it comes to artifact name prefixing, and other components, such as nifi-commons, include the `nifi` prefix. Although `nifi` is included in the group name, that is true across the board. When viewing the generated JAR artifacts, the group name is not present, and in this case, having the `nifi` prefix helps indicate that this is a C2 protocol for NiFi. If we had other examples outside of MiNiFi, but inside the repository, without the prefix, then it would seem less necessary, but as it stands, I lean more in the direction of keeping the prefix. To clarify, you are seeing that this C2 module is not necessarily specific to NiFi at all? That may be a stronger argument for leaving it as-is, but just trying to understand the scope a bit more. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] exceptionfactory commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
exceptionfactory commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764162717 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/AgentInfo.java ## @@ -0,0 +1,88 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.validation.constraints.NotBlank; + +@ApiModel +public class AgentInfo implements Serializable { +private static final long serialVersionUID = -8812289319080770084L; Review comment: Swagger does not need `Serializable`, so if it is not absolutely necessary, it seems cleaner to start without 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764161218 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/AgentInfo.java ## @@ -0,0 +1,88 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation + * + * 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.c2.protocol.api; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import javax.validation.constraints.NotBlank; + +@ApiModel +public class AgentInfo implements Serializable { +private static final long serialVersionUID = -8812289319080770084L; Review comment: I'm not sure if `Serializable` _needs_ to be used, I saw an example and did a copy-paste. Does swagger need it? If not then maybe they can be removed -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764160512 ## File path: c2/c2-protocol/c2-protocol-api/src/main/java/org/apache/nifi/c2/protocol/api/AgentInfo.java ## @@ -0,0 +1,88 @@ +/* + * Apache NiFi - MiNiFi + * Copyright 2014-2018 The Apache Software Foundation Review comment: Ok will try a sweeping removal :) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on a change in pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on a change in pull request #5563: URL: https://github.com/apache/nifi/pull/5563#discussion_r764159872 ## File path: c2/c2-protocol/c2-protocol-api/pom.xml ## @@ -0,0 +1,38 @@ + + +http://maven.apache.org/POM/4.0.0; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + + +c2-protocol +org.apache.nifi +1.16.0-SNAPSHOT + + +c2-protocol-api Review comment: Since we have `nifi` in the group name and the C2 modules are meant to be used by NiFi but not strictly tied to it, I'd like to keep it just `c2` like we do with `minifi`, unless there are strong objections? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] mattyb149 commented on pull request #5563: NIFI-9430: Create initial C2 structure, add c2-protocol-api module
mattyb149 commented on pull request #5563: URL: https://github.com/apache/nifi/pull/5563#issuecomment-988077466 I'm going to change the base branch to main, that way we can get the API into the NiFi codebase for community developers to start working with earlier. The feature branch NIFI-9428 (once rebased) can then be used for work on the server and client and such. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-9452) Produce a c2 component manifest for NiFi at build time
Bryan Bende created NIFI-9452: - Summary: Produce a c2 component manifest for NiFi at build time Key: NIFI-9452 URL: https://issues.apache.org/jira/browse/NIFI-9452 Project: Apache NiFi Issue Type: Improvement Reporter: Bryan Bende Assignee: Bryan Bende Once NIFI-9430 is completed, we will have an initial c2-protocol-api module that defines an agent manifest, which contains a component manifest. We also have all of the extension-manifest.xml definitions that are in each NAR, and are now bundled up as part of the assembly. We should take all of the extension-manifest.xml definitions and use them as input to produce a single c2 runtime manifest for the nifi build. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Updated] (NIFI-9093) Add timeouts to avoid GetSplunk processor hanging
[ https://issues.apache.org/jira/browse/NIFI-9093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joe Witt updated NIFI-9093: --- Summary: Add timeouts to avoid GetSplunk processor hanging (was: GetSplunk Processor hangs) > Add timeouts to avoid GetSplunk processor hanging > - > > Key: NIFI-9093 > URL: https://issues.apache.org/jira/browse/NIFI-9093 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.12.1 > Environment: NiFi 3 nodes cluster - 40 CPU core +28 GB of RAM per node >Reporter: Michael Elbraish >Priority: Major > Labels: easy-fix, newbie > Time Spent: 1h 20m > Remaining Estimate: 0h > > I configured GetSplunk to run on cron schedule every 2 min, sometimes when > there's no data to retrieve from Splunk, the job thread hangs with no issues > or outputs and keeps running, blocking the new scheduled jobs from starting > until I stop--> terminate --> start processor. > > 1- Why this happened in the first place, that the threads of GetSplunk kept > hanging > 2- How to over come such situation in the future? we need to either be > notified by some kind of log message or the threads should terminates on > their own. > 3- If a thread was hanging, then why subsequent threads didn't execute > > I also believe that adding a timeout property to this processor is important -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Resolved] (NIFI-9093) Add timeouts to avoid GetSplunk processor hanging
[ https://issues.apache.org/jira/browse/NIFI-9093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joe Witt resolved NIFI-9093. Fix Version/s: 1.16.0 Assignee: Joe Witt Resolution: Fixed > Add timeouts to avoid GetSplunk processor hanging > - > > Key: NIFI-9093 > URL: https://issues.apache.org/jira/browse/NIFI-9093 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.12.1 > Environment: NiFi 3 nodes cluster - 40 CPU core +28 GB of RAM per node >Reporter: Michael Elbraish >Assignee: Joe Witt >Priority: Major > Labels: easy-fix, newbie > Fix For: 1.16.0 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > I configured GetSplunk to run on cron schedule every 2 min, sometimes when > there's no data to retrieve from Splunk, the job thread hangs with no issues > or outputs and keeps running, blocking the new scheduled jobs from starting > until I stop--> terminate --> start processor. > > 1- Why this happened in the first place, that the threads of GetSplunk kept > hanging > 2- How to over come such situation in the future? we need to either be > notified by some kind of log message or the threads should terminates on > their own. > 3- If a thread was hanging, then why subsequent threads didn't execute > > I also believe that adding a timeout property to this processor is important -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Commented] (NIFI-9093) GetSplunk Processor hangs
[ https://issues.apache.org/jira/browse/NIFI-9093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17454706#comment-17454706 ] ASF subversion and git services commented on NIFI-9093: --- Commit 70822b9c8d9105518f759f44ff4f828fc3fb6732 in nifi's branch refs/heads/main from ahmed shaaban [ https://gitbox.apache.org/repos/asf?p=nifi.git;h=70822b9 ] NIFI-9093 This closes #5578. GetSplunk Processor hangs addressed by adding timeouts. changed the required flag to false on ConnectTimeout and ReadTimeout properties Signed-off-by: Joe Witt > GetSplunk Processor hangs > - > > Key: NIFI-9093 > URL: https://issues.apache.org/jira/browse/NIFI-9093 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.12.1 > Environment: NiFi 3 nodes cluster - 40 CPU core +28 GB of RAM per node >Reporter: Michael Elbraish >Priority: Major > Labels: easy-fix, newbie > Time Spent: 1h > Remaining Estimate: 0h > > I configured GetSplunk to run on cron schedule every 2 min, sometimes when > there's no data to retrieve from Splunk, the job thread hangs with no issues > or outputs and keeps running, blocking the new scheduled jobs from starting > until I stop--> terminate --> start processor. > > 1- Why this happened in the first place, that the threads of GetSplunk kept > hanging > 2- How to over come such situation in the future? we need to either be > notified by some kind of log message or the threads should terminates on > their own. > 3- If a thread was hanging, then why subsequent threads didn't execute > > I also believe that adding a timeout property to this processor is important -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] joewitt commented on pull request #5578: NIFI-9093 GetSplunk Processor hangs
joewitt commented on pull request #5578: URL: https://github.com/apache/nifi/pull/5578#issuecomment-988023084 +1 merged to main. thanks for the contribution! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] asfgit closed pull request #5578: NIFI-9093 GetSplunk Processor hangs
asfgit closed pull request #5578: URL: https://github.com/apache/nifi/pull/5578 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Created] (NIFI-9451) Add Input Character Set Property to PutEmail
David Handermann created NIFI-9451: -- Summary: Add Input Character Set Property to PutEmail Key: NIFI-9451 URL: https://issues.apache.org/jira/browse/NIFI-9451 Project: Apache NiFi Issue Type: Improvement Components: Extensions Reporter: David Handermann The {{PutEmail}} processor supports reading input FlowFile contents to generate the message body, or as an attachment to the message. In both cases, the processor uses the UTF-8 character set to read the input FlowFile in preparation for message encoding. A new property should be added to {{PutEmail}} named {{Input Character Set}} that would support the ability to configure the character set when reading FlowFile contents. The default value should be {{UTF-8}} to maintain compatibility with the current implementation. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (NIFI-9450) Create/Correct documentation for nifi.sh diagnostics command
Wynner created NIFI-9450: Summary: Create/Correct documentation for nifi.sh diagnostics command Key: NIFI-9450 URL: https://issues.apache.org/jira/browse/NIFI-9450 Project: Apache NiFi Issue Type: Task Reporter: Wynner The current documentation for nifi.sh diagnostics is incorrect: {{./bin/nifi.sh --diagnostics }} {{Should be }} {{./bin/nifi.sh diagnostics }} {{}} {{{}{}}}{{{}Additionally there should be an example of the output and explanation of provided information.{}}} -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] simonbence commented on a change in pull request #5574: NIFI-9397 Extending JettyWebSocketClient authorization possibilities with custom setup
simonbence commented on a change in pull request #5574: URL: https://github.com/apache/nifi/pull/5574#discussion_r764029839 ## File path: nifi-nar-bundles/nifi-websocket-bundle/nifi-websocket-services-jetty/src/main/java/org/apache/nifi/websocket/jetty/JettyWebSocketClient.java ## @@ -145,6 +145,19 @@ .defaultValue("US-ASCII") .build(); +public static final PropertyDescriptor CUSTOM_AUTH = new PropertyDescriptor.Builder() +.name("custom-authorization") +.displayName("Custom Authorization") +.description( +"If set tgether with \"User Name\" and \"User Password\", instead of using Basic" + +" Authentication the value of the property will be assigned to the \"Authorization\" HTTP header.") Review comment: Thank again, this is a good idea. I really had no strong reason to go with just documenting 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] lordgamez commented on a change in pull request #1222: MINIFICPP-1695 Fix execution of native python processors
lordgamez commented on a change in pull request #1222: URL: https://github.com/apache/nifi-minifi-cpp/pull/1222#discussion_r763992452 ## File path: extensions/script/python/ExecutePythonProcessor.cpp ## @@ -50,39 +50,72 @@ core::Property ExecutePythonProcessor::ModuleDirectory(core::PropertyBuilder::cr ->withDefaultValue("") ->build()); -core::Relationship ExecutePythonProcessor::Success("success", "Script successes"); -core::Relationship ExecutePythonProcessor::Failure("failure", "Script failures"); +core::Relationship ExecutePythonProcessor::Success("success", "Script succeeds"); +core::Relationship ExecutePythonProcessor::Failure("failure", "Script fails"); void ExecutePythonProcessor::initialize() { - setSupportedProperties({ -ScriptFile, -ScriptBody, -ModuleDirectory - }); - setAcceptAllProperties(); - setSupportedRelationships({ -Success, -Failure - }); -} + if (getProperties().empty()) { +setSupportedProperties({ + ScriptFile, + ScriptBody, + ModuleDirectory +}); +setAcceptAllProperties(); +setSupportedRelationships({ + Success, + Failure +}); + } + + if (processor_initialized_) { +logger_->log_debug("Processor has already been initialized, returning..."); +return; + } -void ExecutePythonProcessor::onSchedule(const std::shared_ptr , const std::shared_ptr& /*sessionFactory*/) { python_logger_ = core::logging::LoggerFactory::getAliasedLogger(getName()); getProperty(ModuleDirectory.getName(), module_directory_); - appendPathForImportModules(); - loadScript(); - if (script_to_exec_.empty()) { -throw std::runtime_error("Neither Script Body nor Script File is available to execute"); + try { +loadScript(); + } catch(const std::runtime_error&) { +logger_->log_warn("Could not load python script while initializing. In case of non-native python processor this is normal and will be done in the schedule phase."); Review comment: Sure, added comment in e32ad12483fe66bc7759237495e9922737a3958b -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org 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 #1222: MINIFICPP-1695 Fix execution of native python processors
adamdebreceni commented on a change in pull request #1222: URL: https://github.com/apache/nifi-minifi-cpp/pull/1222#discussion_r763973217 ## File path: extensions/script/python/ExecutePythonProcessor.cpp ## @@ -50,39 +50,72 @@ core::Property ExecutePythonProcessor::ModuleDirectory(core::PropertyBuilder::cr ->withDefaultValue("") ->build()); -core::Relationship ExecutePythonProcessor::Success("success", "Script successes"); -core::Relationship ExecutePythonProcessor::Failure("failure", "Script failures"); +core::Relationship ExecutePythonProcessor::Success("success", "Script succeeds"); +core::Relationship ExecutePythonProcessor::Failure("failure", "Script fails"); void ExecutePythonProcessor::initialize() { - setSupportedProperties({ -ScriptFile, -ScriptBody, -ModuleDirectory - }); - setAcceptAllProperties(); - setSupportedRelationships({ -Success, -Failure - }); -} + if (getProperties().empty()) { +setSupportedProperties({ + ScriptFile, + ScriptBody, + ModuleDirectory +}); +setAcceptAllProperties(); +setSupportedRelationships({ + Success, + Failure +}); + } + + if (processor_initialized_) { +logger_->log_debug("Processor has already been initialized, returning..."); +return; + } -void ExecutePythonProcessor::onSchedule(const std::shared_ptr , const std::shared_ptr& /*sessionFactory*/) { python_logger_ = core::logging::LoggerFactory::getAliasedLogger(getName()); getProperty(ModuleDirectory.getName(), module_directory_); - appendPathForImportModules(); - loadScript(); - if (script_to_exec_.empty()) { -throw std::runtime_error("Neither Script Body nor Script File is available to execute"); + try { +loadScript(); + } catch(const std::runtime_error&) { +logger_->log_warn("Could not load python script while initializing. In case of non-native python processor this is normal and will be done in the schedule phase."); Review comment: I see, that makes sense, could you add this reason as a comment? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] lordgamez commented on a change in pull request #1222: MINIFICPP-1695 Fix execution of native python processors
lordgamez commented on a change in pull request #1222: URL: https://github.com/apache/nifi-minifi-cpp/pull/1222#discussion_r763965080 ## File path: extensions/script/python/ExecutePythonProcessor.cpp ## @@ -50,39 +50,72 @@ core::Property ExecutePythonProcessor::ModuleDirectory(core::PropertyBuilder::cr ->withDefaultValue("") ->build()); -core::Relationship ExecutePythonProcessor::Success("success", "Script successes"); -core::Relationship ExecutePythonProcessor::Failure("failure", "Script failures"); +core::Relationship ExecutePythonProcessor::Success("success", "Script succeeds"); +core::Relationship ExecutePythonProcessor::Failure("failure", "Script fails"); void ExecutePythonProcessor::initialize() { - setSupportedProperties({ -ScriptFile, -ScriptBody, -ModuleDirectory - }); - setAcceptAllProperties(); - setSupportedRelationships({ -Success, -Failure - }); -} + if (getProperties().empty()) { +setSupportedProperties({ + ScriptFile, + ScriptBody, + ModuleDirectory +}); +setAcceptAllProperties(); +setSupportedRelationships({ + Success, + Failure +}); + } + + if (processor_initialized_) { +logger_->log_debug("Processor has already been initialized, returning..."); +return; + } -void ExecutePythonProcessor::onSchedule(const std::shared_ptr , const std::shared_ptr& /*sessionFactory*/) { python_logger_ = core::logging::LoggerFactory::getAliasedLogger(getName()); getProperty(ModuleDirectory.getName(), module_directory_); - appendPathForImportModules(); - loadScript(); - if (script_to_exec_.empty()) { -throw std::runtime_error("Neither Script Body nor Script File is available to execute"); + try { +loadScript(); + } catch(const std::runtime_error&) { +logger_->log_warn("Could not load python script while initializing. In case of non-native python processor this is normal and will be done in the schedule phase."); Review comment: `onSchedule` runs for that as well, but as we need to call the native processor's `describe` before the `onSchedule` so we can provide manifest our processor identity on C2 as well. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org 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 #1222: MINIFICPP-1695 Fix execution of native python processors
adamdebreceni commented on a change in pull request #1222: URL: https://github.com/apache/nifi-minifi-cpp/pull/1222#discussion_r763960275 ## File path: extensions/script/python/ExecutePythonProcessor.cpp ## @@ -50,39 +50,72 @@ core::Property ExecutePythonProcessor::ModuleDirectory(core::PropertyBuilder::cr ->withDefaultValue("") ->build()); -core::Relationship ExecutePythonProcessor::Success("success", "Script successes"); -core::Relationship ExecutePythonProcessor::Failure("failure", "Script failures"); +core::Relationship ExecutePythonProcessor::Success("success", "Script succeeds"); +core::Relationship ExecutePythonProcessor::Failure("failure", "Script fails"); void ExecutePythonProcessor::initialize() { - setSupportedProperties({ -ScriptFile, -ScriptBody, -ModuleDirectory - }); - setAcceptAllProperties(); - setSupportedRelationships({ -Success, -Failure - }); -} + if (getProperties().empty()) { +setSupportedProperties({ + ScriptFile, + ScriptBody, + ModuleDirectory +}); +setAcceptAllProperties(); +setSupportedRelationships({ + Success, + Failure +}); + } + + if (processor_initialized_) { +logger_->log_debug("Processor has already been initialized, returning..."); +return; + } -void ExecutePythonProcessor::onSchedule(const std::shared_ptr , const std::shared_ptr& /*sessionFactory*/) { python_logger_ = core::logging::LoggerFactory::getAliasedLogger(getName()); getProperty(ModuleDirectory.getName(), module_directory_); - appendPathForImportModules(); - loadScript(); - if (script_to_exec_.empty()) { -throw std::runtime_error("Neither Script Body nor Script File is available to execute"); + try { +loadScript(); + } catch(const std::runtime_error&) { +logger_->log_warn("Could not load python script while initializing. In case of non-native python processor this is normal and will be done in the schedule phase."); Review comment: and a native processor's `onSchedule` won't be called, an initialization in `onSchedule` would be too late for them? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] lordgamez commented on a change in pull request #1222: MINIFICPP-1695 Fix execution of native python processors
lordgamez commented on a change in pull request #1222: URL: https://github.com/apache/nifi-minifi-cpp/pull/1222#discussion_r763953817 ## File path: extensions/script/python/ExecutePythonProcessor.cpp ## @@ -50,39 +50,72 @@ core::Property ExecutePythonProcessor::ModuleDirectory(core::PropertyBuilder::cr ->withDefaultValue("") ->build()); -core::Relationship ExecutePythonProcessor::Success("success", "Script successes"); -core::Relationship ExecutePythonProcessor::Failure("failure", "Script failures"); +core::Relationship ExecutePythonProcessor::Success("success", "Script succeeds"); +core::Relationship ExecutePythonProcessor::Failure("failure", "Script fails"); void ExecutePythonProcessor::initialize() { - setSupportedProperties({ -ScriptFile, -ScriptBody, -ModuleDirectory - }); - setAcceptAllProperties(); - setSupportedRelationships({ -Success, -Failure - }); -} + if (getProperties().empty()) { +setSupportedProperties({ + ScriptFile, + ScriptBody, + ModuleDirectory +}); +setAcceptAllProperties(); +setSupportedRelationships({ + Success, + Failure +}); + } + + if (processor_initialized_) { +logger_->log_debug("Processor has already been initialized, returning..."); +return; + } -void ExecutePythonProcessor::onSchedule(const std::shared_ptr , const std::shared_ptr& /*sessionFactory*/) { python_logger_ = core::logging::LoggerFactory::getAliasedLogger(getName()); getProperty(ModuleDirectory.getName(), module_directory_); - appendPathForImportModules(); - loadScript(); - if (script_to_exec_.empty()) { -throw std::runtime_error("Neither Script Body nor Script File is available to execute"); + try { +loadScript(); + } catch(const std::runtime_error&) { +logger_->log_warn("Could not load python script while initializing. In case of non-native python processor this is normal and will be done in the schedule phase."); Review comment: Normally in the `ExecutePythonProcessor`'s initialize phase the values of the properties are not yet available like in any other processor. However when we use a native python processor, after the properties are initialized the `PythonObjectFactory` sets the `ScriptFile` property's value to the python processor's file path and calls the `initialize` again and the script will be loaded. ## File path: extensions/script/python/ExecutePythonProcessor.cpp ## @@ -50,39 +50,72 @@ core::Property ExecutePythonProcessor::ModuleDirectory(core::PropertyBuilder::cr ->withDefaultValue("") ->build()); -core::Relationship ExecutePythonProcessor::Success("success", "Script successes"); -core::Relationship ExecutePythonProcessor::Failure("failure", "Script failures"); +core::Relationship ExecutePythonProcessor::Success("success", "Script succeeds"); +core::Relationship ExecutePythonProcessor::Failure("failure", "Script fails"); void ExecutePythonProcessor::initialize() { - setSupportedProperties({ -ScriptFile, -ScriptBody, -ModuleDirectory - }); - setAcceptAllProperties(); - setSupportedRelationships({ -Success, -Failure - }); -} + if (getProperties().empty()) { +setSupportedProperties({ + ScriptFile, + ScriptBody, + ModuleDirectory +}); +setAcceptAllProperties(); +setSupportedRelationships({ + Success, + Failure +}); + } + + if (processor_initialized_) { +logger_->log_debug("Processor has already been initialized, returning..."); +return; + } -void ExecutePythonProcessor::onSchedule(const std::shared_ptr , const std::shared_ptr& /*sessionFactory*/) { python_logger_ = core::logging::LoggerFactory::getAliasedLogger(getName()); getProperty(ModuleDirectory.getName(), module_directory_); - appendPathForImportModules(); - loadScript(); - if (script_to_exec_.empty()) { -throw std::runtime_error("Neither Script Body nor Script File is available to execute"); + try { +loadScript(); + } catch(const std::runtime_error&) { +logger_->log_warn("Could not load python script while initializing. In case of non-native python processor this is normal and will be done in the schedule phase."); Review comment: Normally in the `ExecutePythonProcessor`'s initialize phase the values of the properties are not yet available like in any other processor so it will fail. However when we use a native python processor, after the properties are initialized the `PythonObjectFactory` sets the `ScriptFile` property's value to the python processor's file path and calls the `initialize` again and the script will be loaded. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at:
[jira] [Assigned] (MINIFICPP-1688) ValueParse StringToTime should use std::chrono
[ https://issues.apache.org/jira/browse/MINIFICPP-1688?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Martin Zink reassigned MINIFICPP-1688: -- Assignee: Martin Zink > ValueParse StringToTime should use std::chrono > -- > > Key: MINIFICPP-1688 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1688 > Project: Apache NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Martin Zink >Assignee: Martin Zink >Priority: Minor > Labels: MiNiFi-CPP-Hygiene > > Currently we use custom classes like _core::TimeUnit_ to parse user inputted > time duration. > We should instead create std::chrono::durations from the user inputs. > (and possible replace the various integer class members which contains time > duration to std::chrono aswell) -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #1222: MINIFICPP-1695 Fix execution of native python processors
adamdebreceni commented on a change in pull request #1222: URL: https://github.com/apache/nifi-minifi-cpp/pull/1222#discussion_r763942995 ## File path: extensions/script/python/ExecutePythonProcessor.cpp ## @@ -50,39 +50,72 @@ core::Property ExecutePythonProcessor::ModuleDirectory(core::PropertyBuilder::cr ->withDefaultValue("") ->build()); -core::Relationship ExecutePythonProcessor::Success("success", "Script successes"); -core::Relationship ExecutePythonProcessor::Failure("failure", "Script failures"); +core::Relationship ExecutePythonProcessor::Success("success", "Script succeeds"); +core::Relationship ExecutePythonProcessor::Failure("failure", "Script fails"); void ExecutePythonProcessor::initialize() { - setSupportedProperties({ -ScriptFile, -ScriptBody, -ModuleDirectory - }); - setAcceptAllProperties(); - setSupportedRelationships({ -Success, -Failure - }); -} + if (getProperties().empty()) { +setSupportedProperties({ + ScriptFile, + ScriptBody, + ModuleDirectory +}); +setAcceptAllProperties(); +setSupportedRelationships({ + Success, + Failure +}); + } + + if (processor_initialized_) { +logger_->log_debug("Processor has already been initialized, returning..."); +return; + } -void ExecutePythonProcessor::onSchedule(const std::shared_ptr , const std::shared_ptr& /*sessionFactory*/) { python_logger_ = core::logging::LoggerFactory::getAliasedLogger(getName()); getProperty(ModuleDirectory.getName(), module_directory_); - appendPathForImportModules(); - loadScript(); - if (script_to_exec_.empty()) { -throw std::runtime_error("Neither Script Body nor Script File is available to execute"); + try { +loadScript(); + } catch(const std::runtime_error&) { +logger_->log_warn("Could not load python script while initializing. In case of non-native python processor this is normal and will be done in the schedule phase."); Review comment: what makes a non-native processor fail here but succeed in the schedule? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi-minifi-cpp] lordgamez commented on a change in pull request #1223: MINIFICPP-1223 Only reload script file in ExecutePythonScript when requested in property
lordgamez commented on a change in pull request #1223: URL: https://github.com/apache/nifi-minifi-cpp/pull/1223#discussion_r763940056 ## File path: libminifi/test/script-tests/ExecutePythonProcessorTests.cpp ## @@ -54,13 +60,16 @@ class ExecutePythonProcessorTestBase { } std::string getScriptFullPath(const std::string& script_file_name) { +if (script_file_name.find('/') != std::string::npos || script_file_name.find("\\") != std::string::npos) { Review comment: Good point, it's technically the same. Replaced it in f0cae0afc62088ebaa87610c297e79ee75fc7dc4 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org 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 #1223: MINIFICPP-1223 Only reload script file in ExecutePythonScript when requested in property
adamdebreceni commented on a change in pull request #1223: URL: https://github.com/apache/nifi-minifi-cpp/pull/1223#discussion_r763923617 ## File path: libminifi/test/script-tests/ExecutePythonProcessorTests.cpp ## @@ -54,13 +60,16 @@ class ExecutePythonProcessorTestBase { } std::string getScriptFullPath(const std::string& script_file_name) { +if (script_file_name.find('/') != std::string::npos || script_file_name.find("\\") != std::string::npos) { Review comment: would we want this to be equivalent to `utils::file::resolve`? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] MikeThomsen commented on pull request #5301: NIFI-8209 Added Neo4J 4.X and 3.X clients by splitting the current co…
MikeThomsen commented on pull request #5301: URL: https://github.com/apache/nifi/pull/5301#issuecomment-987830439 Yeah, going to work on it today. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (MINIFICPP-1697) Give a better error message on unsupported algorithms in HashContent
[ https://issues.apache.org/jira/browse/MINIFICPP-1697?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ferenc Gerlits updated MINIFICPP-1697: -- Labels: MiNiFi-CPP-Hygiene (was: ) > Give a better error message on unsupported algorithms in HashContent > > > Key: MINIFICPP-1697 > URL: https://issues.apache.org/jira/browse/MINIFICPP-1697 > Project: Apache NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Ferenc Gerlits >Priority: Minor > Labels: MiNiFi-CPP-Hygiene > > If you specify an unsupported hash algorithm in the {{Hash Algorithm}} > property of the {{HashContent}} processor, it will fail with an error like > this in {{onTrigger}}: > {noformat} > [2021-12-07 10:48:56.508] [org::apache::nifi::minifi::core::Processor] > [warning] Caught "map::at" (St12out_of_range) during Processor::onTrigger of > processor: 345ddcb9-a73b-4d4e-8c3d-66ed162d60fc (HashContent) > [2021-12-07 10:48:56.508] [org::apache::nifi::minifi::core::ProcessSession] > [info] Penalizing c1565920-5742-11ec-bc73-5c879c2c3c60 for 3ms at > HashContent > [2021-12-07 10:48:56.508] [org::apache::nifi::minifi::core::ProcessSession] > [warning] ProcessSession rollback for HashContent executed > {noformat} > It would be better to check the value in {{onSchedule}}, and if it is not > supported, then log a better error message like "algorithm X is not > supported; supported algorithms are: ..." and throw an exception, ie. fail to > schedule the processor. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Created] (MINIFICPP-1697) Give a better error message on unsupported algorithms in HashContent
Ferenc Gerlits created MINIFICPP-1697: - Summary: Give a better error message on unsupported algorithms in HashContent Key: MINIFICPP-1697 URL: https://issues.apache.org/jira/browse/MINIFICPP-1697 Project: Apache NiFi MiNiFi C++ Issue Type: Improvement Reporter: Ferenc Gerlits If you specify an unsupported hash algorithm in the {{Hash Algorithm}} property of the {{HashContent}} processor, it will fail with an error like this in {{onTrigger}}: {noformat} [2021-12-07 10:48:56.508] [org::apache::nifi::minifi::core::Processor] [warning] Caught "map::at" (St12out_of_range) during Processor::onTrigger of processor: 345ddcb9-a73b-4d4e-8c3d-66ed162d60fc (HashContent) [2021-12-07 10:48:56.508] [org::apache::nifi::minifi::core::ProcessSession] [info] Penalizing c1565920-5742-11ec-bc73-5c879c2c3c60 for 3ms at HashContent [2021-12-07 10:48:56.508] [org::apache::nifi::minifi::core::ProcessSession] [warning] ProcessSession rollback for HashContent executed {noformat} It would be better to check the value in {{onSchedule}}, and if it is not supported, then log a better error message like "algorithm X is not supported; supported algorithms are: ..." and throw an exception, ie. fail to schedule the processor. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] pvillard31 commented on pull request #5319: NIFI-9065 Add support for OAuth2AccessTokenProvider in InvokeHTTP.
pvillard31 commented on pull request #5319: URL: https://github.com/apache/nifi/pull/5319#issuecomment-987795017 @tpalfy - can you rebase against latest? I think this would be a nice feature. @MikeThomsen @exceptionfactory - did we clear all previous concerns? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] OlivierBondu commented on pull request #5319: NIFI-9065 Add support for OAuth2AccessTokenProvider in InvokeHTTP.
OlivierBondu commented on pull request #5319: URL: https://github.com/apache/nifi/pull/5319#issuecomment-987773601 Hi, we would be very interested in this feature as well... Any chance you had the time to review it ? Unfortunately I don't have the java skills to help out :( Cheers, Olivier -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[jira] [Updated] (NIFI-9390) MergeContent does not work properly in Kafka Connect Stateless flows
[ https://issues.apache.org/jira/browse/NIFI-9390?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Peter Turcsanyi updated NIFI-9390: -- Status: Patch Available (was: In Progress) > MergeContent does not work properly in Kafka Connect Stateless flows > > > Key: NIFI-9390 > URL: https://issues.apache.org/jira/browse/NIFI-9390 > Project: Apache NiFi > Issue Type: Bug > Components: NiFi Stateless >Reporter: Peter Turcsanyi >Assignee: Peter Turcsanyi >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > MergeContent does not work in Kafka Connect Stateless flows if the processor > is not the first one in the flow. > NIFI-8469 solved this issue for flows similar to the ones mentioned in that > jira: > GetFile --> SplitText --> ReplaceText --> MergeContent --> PutS3Object > In this scenario GetFile reads a file and creates a FF from it. SplitText > creates multiple FFs. ReplaceText processes all the FFs first and > MergeContent will be triggered only after ReplaceText finished with all FFs. > So it is able to merge the FFs (but only splits coming from the same input > file read by GetFile). > A Kafka Connect Stateless Sink flow may look like this: > Input port --> "Process/Transform messages" --> MergeContent --> PutS3Object > The Kafka Connect framework polls some messages from the Kafka topic that > will be enqueued in the stateless flow. Then the first processor gets > triggered with one FF. This FF is sent downstream till the end of the flow. > MergeContent can only see one FF at a time so it cannot merge multiple files. > So the issue is that the first processor gets triggered for each flowfile > separately (which is fine for GetFile but not for the KC Stateless flow). > Only subsequent processors get triggered in "triggerWhileReady" way: > [https://github.com/apache/nifi/blob/18fc492e4ce97d2bca4f96df1a1f1eb2b3e80899/nifi-stateless/nifi-stateless-bundle/nifi-stateless-engine/src/main/java/org/apache/nifi/stateless/flow/StandardStatelessFlowCurrent.java#L68-L77] -- This message was sent by Atlassian Jira (v8.20.1#820001)
[GitHub] [nifi] turcsanyip opened a new pull request #5580: NIFI-9390: Source components can ingest FlowFiles eagerly in stateles…
turcsanyip opened a new pull request #5580: URL: https://github.com/apache/nifi/pull/5580 …s dataflows Some processors (like MergeContent/Record with minimum size 1) can process all available FlowFiles from their input queue in a batch but will not wait for more FlowFiles (that would be ingested by the source component). Source components used to be triggered once and ingest the input data one by one which is not appropriate for the use case mentioned above. Introduced eager ingestion of FlowFiles where the source component feeds the flow up until transaction thresholds reached or no more input data available. https://issues.apache.org/jira/browse/NIFI-9390 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 `main`)? - [ ] 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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [nifi] arkark opened a new pull request #5579: NIFI-9449: Implement login redirects to specified URLs
arkark opened a new pull request #5579: URL: https://github.com/apache/nifi/pull/5579 Add tests for getRedirectUriAfterLogin Thank you for submitting a contribution to Apache NiFi. Please provide a short description of the PR here: Description of PR I implemented login redirects to specified URLs for each user authentication. - The login redirects use a query parameter and a cookie. - The query parameter is used for Single User, LDAP, Kerberos, OIDC, SAML, and Apache Knox. - The cookie is used for OIDC, SAML, and Apache Knox. - The implementation avoids open redirection vulnerabilities by checking the origin of the given URL. https://issues.apache.org/jira/browse/NIFI-9449 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 `main`)? - [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. To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org