[jira] [Commented] (NIFI-5895) Add a processor to start an Oozie workflow
[ https://issues.apache.org/jira/browse/NIFI-5895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16721196#comment-16721196 ] ASF GitHub Bot commented on NIFI-5895: -- Github user pvillard31 commented on the issue: https://github.com/apache/nifi/pull/3218 This PR has been tested against an Oozie 4.2.0 server instance in the following conditions: - Plaintext - Plaintext + SSL - Kerberos - Kerberos + SSL A very basic examples has been used: https://github.com/apache/oozie/tree/branch-4.3/examples/src/main/apps/shell Testing workflow: https://gist.github.com/pvillard31/4a0a7b33dc27c11538cec0b5e80c0324 The workflow.xml from the Oozie repo must be pushed in HDFS in a directory and that directory is used in the configuration of the processor. All the properties given in the job.properties file from the Oozie repo must be passed through the configuration of the processor or the attributes of the flow files. > Add a processor to start an Oozie workflow > -- > > Key: NIFI-5895 > URL: https://issues.apache.org/jira/browse/NIFI-5895 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > > It would be useful to have a processor allowing a user to start an Oozie > workflow. Typical use case would be: data is pushed to HDFS and user wants to > start an Oozie workflow that is going to process that data. Using the REST > API with InvokeHttp is possible but it gets harder when Kerberos is enabled. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5895) Add a processor to start an Oozie workflow
[ https://issues.apache.org/jira/browse/NIFI-5895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16721108#comment-16721108 ] ASF GitHub Bot commented on NIFI-5895: -- GitHub user pvillard31 opened a pull request: https://github.com/apache/nifi/pull/3218 NIFI-5895 - Add a processor to start an Oozie workflow Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/pvillard31/nifi oozie Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3218.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3218 commit bbcdf5dc87e7dfb15f6d48a3d32b5f73540d6427 Author: Pierre Villard Date: 2018-12-11T16:25:01Z NIFI-5895 - Add a processor to start an Oozie workflow > Add a processor to start an Oozie workflow > -- > > Key: NIFI-5895 > URL: https://issues.apache.org/jira/browse/NIFI-5895 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > > It would be useful to have a processor allowing a user to start an Oozie > workflow. Typical use case would be: data is pushed to HDFS and user wants to > start an Oozie workflow that is going to process that data. Using the REST > API with InvokeHttp is possible but it gets harder when Kerberos is enabled. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-4579) When Strict Type Checking property is set to "false", ValidateRecord does not coerce fields into the correct type.
[ https://issues.apache.org/jira/browse/NIFI-4579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720631#comment-16720631 ] ASF GitHub Bot commented on NIFI-4579: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/2794 > When Strict Type Checking property is set to "false", ValidateRecord does not > coerce fields into the correct type. > -- > > Key: NIFI-4579 > URL: https://issues.apache.org/jira/browse/NIFI-4579 > Project: Apache NiFi > Issue Type: Bug > Components: Documentation & Website, Extensions >Affects Versions: 1.4.0 >Reporter: Andrew Lim >Assignee: Koji Kawamura >Priority: Major > Fix For: 1.9.0 > > > The description of the Strict Type Checking property for the ValidateRecord > processor states: > _If false, the Record will be considered valid and the field will be coerced > into the correct type (if possible, according to the type coercion supported > by the Record Writer)._ > In my testing I've confirmed that in this scenario, the records are > considered valid. But, none of the record fields are coerced into the > correct type. > We should either correct the documentation or implement the promised coercion > functionality. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-4579) When Strict Type Checking property is set to "false", ValidateRecord does not coerce fields into the correct type.
[ https://issues.apache.org/jira/browse/NIFI-4579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720629#comment-16720629 ] ASF GitHub Bot commented on NIFI-4579: -- Github user mattyb149 commented on the issue: https://github.com/apache/nifi/pull/2794 +1 LGTM, verified the unit test illustrates the behavior and the patch fixes it. Thanks for the fix! Merging to master > When Strict Type Checking property is set to "false", ValidateRecord does not > coerce fields into the correct type. > -- > > Key: NIFI-4579 > URL: https://issues.apache.org/jira/browse/NIFI-4579 > Project: Apache NiFi > Issue Type: Bug > Components: Documentation & Website, Extensions >Affects Versions: 1.4.0 >Reporter: Andrew Lim >Assignee: Koji Kawamura >Priority: Major > Fix For: 1.9.0 > > > The description of the Strict Type Checking property for the ValidateRecord > processor states: > _If false, the Record will be considered valid and the field will be coerced > into the correct type (if possible, according to the type coercion supported > by the Record Writer)._ > In my testing I've confirmed that in this scenario, the records are > considered valid. But, none of the record fields are coerced into the > correct type. > We should either correct the documentation or implement the promised coercion > functionality. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-3988) SplitRecord processor missing fragment attributes
[ https://issues.apache.org/jira/browse/NIFI-3988?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720492#comment-16720492 ] ASF GitHub Bot commented on NIFI-3988: -- GitHub user mattyb149 opened a pull request: https://github.com/apache/nifi/pull/3217 NIFI-3988: Add fragment attributes to SplitRecord Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [x] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] Has your PR been rebased against the latest commit within the target branch (typically master)? - [x] Is your initial contribution a single, squashed commit? ### 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? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/mattyb149/nifi NIFI-3988 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3217.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3217 commit 1b95cd85fe623e6f981340dbfdcdc3c1034dbd5d Author: Matthew Burgess Date: 2018-12-13T19:02:14Z NIFI-3988: Add fragment attributes to SplitRecord > SplitRecord processor missing fragment attributes > - > > Key: NIFI-3988 > URL: https://issues.apache.org/jira/browse/NIFI-3988 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework > Environment: Fedora 25 >Reporter: Uwe Geercken >Assignee: Matt Burgess >Priority: Minor > Labels: attributes, processor, split > > There are several SplitXXX processors available. They all add some attributes > for the relevant fragment to the flowfile. Such as e.g. fragment.index, > fragment.count and fragment.identifier. > The SplitRecord processor does not add these attributes. > For a consistent user experience, and partly for compatibility with > MergeContent and other processors please add the relevant attributes to > SplitRecord. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720471#comment-16720471 ] ASF GitHub Bot commented on NIFIREG-215: Github user asfgit closed the pull request at: https://github.com/apache/nifi-registry/pull/149 > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720472#comment-16720472 ] ASF GitHub Bot commented on NIFIREG-215: Github user kevdoran commented on the issue: https://github.com/apache/nifi-registry/pull/149 Thanks, @bbende! +1, merged to master. > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5891) NiFi record serde throws NPE when decimal field has null value
[ https://issues.apache.org/jira/browse/NIFI-5891?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720296#comment-16720296 ] ASF GitHub Bot commented on NIFI-5891: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3216 > NiFi record serde throws NPE when decimal field has null value > -- > > Key: NIFI-5891 > URL: https://issues.apache.org/jira/browse/NIFI-5891 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework > Environment: RHEL 7.5 > Open JDK 1.8 >Reporter: Gideon Korir >Priority: Major > Fix For: 1.9.0 > > > When an incoming record has a null decimal field, NiFiRecordSerDe ( > org.apache.hive.streaming) throws an NPE when trying to create a HiveDecimal. > This causes the PutHive3Streaming processor to skip the record and log a > warning. > > The lines: > {code:java} > val = HiveDecimal.create(record.getAsDouble(fieldName)); > {code} > should be changed to something along the lines of: > {code:java} > Double d = record.getAsDouble(fieldName); > val = d == null ? null : HiveRecord.create(d);{code} > The bug is insidious and occurs during Auto-unboxing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5891) NiFi record serde throws NPE when decimal field has null value
[ https://issues.apache.org/jira/browse/NIFI-5891?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720292#comment-16720292 ] ASF GitHub Bot commented on NIFI-5891: -- Github user mattyb149 commented on the issue: https://github.com/apache/nifi/pull/3216 +1 LGTM, verified the unit tests illustrate the problem and the patch fixes it. There are 2 CheckStyle violations but I will fix them on merge. Thanks for the fix! Merging to master > NiFi record serde throws NPE when decimal field has null value > -- > > Key: NIFI-5891 > URL: https://issues.apache.org/jira/browse/NIFI-5891 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework > Environment: RHEL 7.5 > Open JDK 1.8 >Reporter: Gideon Korir >Priority: Major > > When an incoming record has a null decimal field, NiFiRecordSerDe ( > org.apache.hive.streaming) throws an NPE when trying to create a HiveDecimal. > This causes the PutHive3Streaming processor to skip the record and log a > warning. > > The lines: > {code:java} > val = HiveDecimal.create(record.getAsDouble(fieldName)); > {code} > should be changed to something along the lines of: > {code:java} > Double d = record.getAsDouble(fieldName); > val = d == null ? null : HiveRecord.create(d);{code} > The bug is insidious and occurs during Auto-unboxing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720274#comment-16720274 ] ASF GitHub Bot commented on NIFIREG-215: Github user bbende commented on the issue: https://github.com/apache/nifi-registry/pull/149 @kevdoran I pushed up a commit to update the filter params documentation. I decided not to do anything with the lastModified value on the bundle table because technically nothing on that row is ever changing, it is really the entries in the version table which are changing, and this will have new create dates when redeploying any version. Let me know if there is anything else. > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5891) NiFi record serde throws NPE when decimal field has null value
[ https://issues.apache.org/jira/browse/NIFI-5891?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16720220#comment-16720220 ] ASF GitHub Bot commented on NIFI-5891: -- GitHub user gideonkorir opened a pull request: https://github.com/apache/nifi/pull/3216 NIFI-5891 fix handling of null logical types in Hive3Streaming processor Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/gideonkorir/nifi NIFI-5891 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3216.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3216 commit 61a5e9507ac2def912b1a954ce0708a83a49c2db Author: gkkorir Date: 2018-12-13T14:25:37Z NIFI-5891 fix handling of null logical types in Hive3Streaming processor > NiFi record serde throws NPE when decimal field has null value > -- > > Key: NIFI-5891 > URL: https://issues.apache.org/jira/browse/NIFI-5891 > Project: Apache NiFi > Issue Type: Improvement > Components: Core Framework >Affects Versions: 1.8.0 > Environment: RHEL 7.5 > Open JDK 1.8 >Reporter: Gideon Korir >Priority: Major > > When an incoming record has a null decimal field, NiFiRecordSerDe ( > org.apache.hive.streaming) throws an NPE when trying to create a HiveDecimal. > This causes the PutHive3Streaming processor to skip the record and log a > warning. > > The lines: > {code:java} > val = HiveDecimal.create(record.getAsDouble(fieldName)); > {code} > should be changed to something along the lines of: > {code:java} > Double d = record.getAsDouble(fieldName); > val = d == null ? null : HiveRecord.create(d);{code} > The bug is insidious and occurs during Auto-unboxing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719533#comment-16719533 ] ASF GitHub Bot commented on NIFIREG-215: Github user kevdoran commented on a diff in the pull request: https://github.com/apache/nifi-registry/pull/149#discussion_r241217517 --- Diff: nifi-registry-core/nifi-registry-data-model/src/main/java/org/apache/nifi/registry/bucket/Bucket.java --- @@ -41,6 +41,8 @@ private String description; +private Boolean allowExtensionBundleRedeploy; --- End diff -- Ok, I’m not familiar with Nexus’s configuration options, but I’m in favor of keeping consistencies/parallels with that. I’m good with leaving this as-is. > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719485#comment-16719485 ] ASF GitHub Bot commented on MINIFICPP-479: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/460#discussion_r241199779 --- Diff: libminifi/include/core/state/Value.h --- @@ -74,94 +157,215 @@ class BoolValue : public Value { explicit BoolValue(bool value) : Value(value ? "true" : "false"), value(value) { +setTypeId(); + } + explicit BoolValue(const std::string &strvalue) + : Value(strvalue) { +bool l; +std::istringstream(strvalue) >> std::boolalpha >> l; +value = l; // avoid warnings } - bool getValue() { + + bool getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(int64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(uint64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(bool &ref) { +ref = value; +return true; + } + bool value; }; -class Int64Value : public Value { +class UInt64Value : public Value { public: - explicit Int64Value(uint64_t value) + explicit UInt64Value(uint64_t value) : Value(std::to_string(value)), value(value) { +setTypeId(); + } + explicit UInt64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoull(strvalue)) { +setTypeId(); } - uint64_t getValue() { + + uint64_t getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +if (value < std::numeric_limits::max()) { + ref = value; + return true; +} +return false; + } + + virtual bool getValue(uint64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } + uint64_t value; }; +class Int64Value : public Value { + public: + explicit Int64Value(int64_t value) + : Value(std::to_string(value)), +value(value) { +setTypeId(); + } + explicit Int64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoll(strvalue)) { +setTypeId(); + } + + int64_t getValue() { +return value; + } + protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(uint64_t &ref) { +if (value >= 0) { + ref = value; + return true; +} +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } -static inline std::shared_ptr createValue( -const bool &object) { + int64_t value; +}; + +static inline std::shared_ptr createValue(const bool &object) { return std::make_shared(object); } -static inline std::shared_ptr createValue( -const char *object) { +static inline std::shared_ptr createValue(const char *object) { return std::make_shared(object); } -static inline std::shared_ptr createValue( -char *object) { +static inline std::shared_ptr createValue(char *object) { return std::make_shared(std::string(object)); } -static inline std::shared_ptr createValue( -const std::string &object) { +static inline std::shared_ptr createValue(const std::string &object) { return std::make_shared(object); } - -static inline std::shared_ptr createValue( -const uint32_t &object) { - return std::make_shared(object); +static inline std::shared_ptr createValue(const uint32_t &object) { + return std::make_shared(object); +} +#if ( defin
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719469#comment-16719469 ] ASF GitHub Bot commented on MINIFICPP-479: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/460#discussion_r241193264 --- Diff: libminifi/include/core/PropertyValidation.h --- @@ -0,0 +1,347 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef LIBMINIFI_INCLUDE_CORE_PROPERTYVALIDATION_H_ +#define LIBMINIFI_INCLUDE_CORE_PROPERTYVALIDATION_H_ + +#include "core/Core.h" +#include "core/state/Value.h" +#include "TypedValues.h" +#include "utils/StringUtils.h" +#include + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace core { + +class ValidationResult; + +class ValidationResult { + public: + bool valid() const { +return valid_; + } + + class Builder { + public: +static Builder createBuilder() { + return Builder(); +} +Builder &isValid(bool valid) { + valid_ = valid; + return *this; +} +Builder &withSubject(const std::string &subject) { + subject_ = subject; + return *this; +} +Builder &withInput(const std::string &input) { + input_ = input; + return *this; +} + +ValidationResult build() { + return ValidationResult(*this); +} + + protected: +bool valid_; +std::string subject_; +std::string input_; +friend class ValidationResult; + }; + private: + + bool valid_; + std::string subject_; + std::string input_; + + ValidationResult(const Builder &builder) + : valid_(builder.valid_), +subject_(builder.subject_), +input_(builder.input_) { + } + + friend class Builder; +}; + +class PropertyValidator { + public: + + PropertyValidator(const std::string &name) + : name_(name) { + } + virtual ~PropertyValidator() { + + } + + std::string getName() const { +return name_; + } + + virtual ValidationResult validate(const std::string &subject, const std::shared_ptr &input) const = 0; + + virtual ValidationResult validate(const std::string &subject, const std::string &input) const = 0; + + protected: + template + ValidationResult _validate_internal(const std::string &subject, const std::shared_ptr &input) const { +if (std::dynamic_pointer_cast(input) != nullptr) { + return ValidationResult::Builder::createBuilder().withSubject(subject).withInput(input->getStringValue()).isValid(true).build(); +} else { + state::response::ValueNode vn; + vn = input->getStringValue(); + return validate(subject, input->getStringValue()); +} + + } + + std::string name_; +}; + +class AlwaysValid : public PropertyValidator { + bool always_valid_; + public: + AlwaysValid(bool isalwaysvalid, const std::string &name) + : always_valid_(isalwaysvalid), +PropertyValidator(name) { + + } + virtual ~AlwaysValid() { + } + ValidationResult validate(const std::string &subject, const std::shared_ptr &input) const { +return ValidationResult::Builder::createBuilder().withSubject(subject).withInput(input->getStringValue()).isValid(always_valid_).build(); + } + + ValidationResult validate(const std::string &subject, const std::string &input) const { +return ValidationResult::Builder::createBuilder().withSubject(subject).withInput(input).isValid(always_valid_).build(); + } + +}; + +class BooleanValidator : public PropertyValidator { + public: + BooleanValidator(const std::string &name) + : Prop
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719467#comment-16719467 ] ASF GitHub Bot commented on MINIFICPP-479: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/460#discussion_r241192961 --- Diff: libminifi/include/core/state/Value.h --- @@ -74,94 +157,215 @@ class BoolValue : public Value { explicit BoolValue(bool value) : Value(value ? "true" : "false"), value(value) { +setTypeId(); + } + explicit BoolValue(const std::string &strvalue) + : Value(strvalue) { +bool l; +std::istringstream(strvalue) >> std::boolalpha >> l; +value = l; // avoid warnings } - bool getValue() { + + bool getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(int64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(uint64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(bool &ref) { +ref = value; +return true; + } + bool value; }; -class Int64Value : public Value { +class UInt64Value : public Value { public: - explicit Int64Value(uint64_t value) + explicit UInt64Value(uint64_t value) : Value(std::to_string(value)), value(value) { +setTypeId(); + } + explicit UInt64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoull(strvalue)) { +setTypeId(); } - uint64_t getValue() { + + uint64_t getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +if (value < std::numeric_limits::max()) { + ref = value; + return true; +} +return false; + } + + virtual bool getValue(uint64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } + uint64_t value; }; +class Int64Value : public Value { + public: + explicit Int64Value(int64_t value) + : Value(std::to_string(value)), +value(value) { +setTypeId(); + } + explicit Int64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoll(strvalue)) { +setTypeId(); + } + + int64_t getValue() { +return value; + } + protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(uint64_t &ref) { +if (value >= 0) { + ref = value; + return true; +} +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } -static inline std::shared_ptr createValue( -const bool &object) { + int64_t value; --- End diff -- I think that's probably a differing opinion of style. I don't like using "using" directives and don't think the duplication is enough to warrant its usage. I have and do use "using" but very sparingly. > Incorporate property validation information into manifest > - > > Key: MINIFICPP-479 > URL: https://issues.apache.org/jira/browse/MINIFICPP-479 > Project: NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Andrew Christianson >Assignee: Mr TheSegfault >Priority: Major > > High-level intent is to avoid round-trip to c2 to know that flow is valid > (or, invalid in common/trivial ways). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719462#comment-16719462 ] ASF GitHub Bot commented on NIFIREG-215: Github user bbende commented on a diff in the pull request: https://github.com/apache/nifi-registry/pull/149#discussion_r241191410 --- Diff: nifi-registry-core/nifi-registry-data-model/src/main/java/org/apache/nifi/registry/bucket/Bucket.java --- @@ -41,6 +41,8 @@ private String description; +private Boolean allowExtensionBundleRedeploy; --- End diff -- Right now the way it is implemented, SNAPSHOTS are treated special and always allow redeployment, so the boolean is really just for whether or not "released" artifacts (i.e. non-snapshot) can be redeployed. Maybe there is a better name for the field though? I was mostly thinking of how Nexus has some kind of global checkbox that lets you say whether you can redeploy released artifacts to the given Nexus instance. > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719463#comment-16719463 ] ASF GitHub Bot commented on NIFIREG-215: Github user bbende commented on the issue: https://github.com/apache/nifi-registry/pull/149 Thanks for the review, I'll look into that lastModified timestamp issue as well. > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-695) NanoFi Examples appear to be broken
[ https://issues.apache.org/jira/browse/MINIFICPP-695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719458#comment-16719458 ] ASF GitHub Bot commented on MINIFICPP-695: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/459#discussion_r241191018 --- Diff: nanofi/examples/CMakeLists.txt --- @@ -50,11 +50,11 @@ if (WIN32) set(LINK_FLAGS "/WHOLEARCHIVE") set(LINK_END_FLAGS "") elseif (APPLE) -set(LINK_FLAGS "-Wl,-all_load") +set(LINK_FLAGS "") --- End diff -- This seems wrong based on what it should do, but hard to argue with it not working... > NanoFi Examples appear to be broken > --- > > Key: MINIFICPP-695 > URL: https://issues.apache.org/jira/browse/MINIFICPP-695 > Project: NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Blocker > Labels: nanofi > > When testing recent changes the examples appear to not work due to a > mis-configuration of the client. Not sure when/what broke it specifically, > but we should ensure that examples function. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-695) NanoFi Examples appear to be broken
[ https://issues.apache.org/jira/browse/MINIFICPP-695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719455#comment-16719455 ] ASF GitHub Bot commented on MINIFICPP-695: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi-minifi-cpp/pull/459 > NanoFi Examples appear to be broken > --- > > Key: MINIFICPP-695 > URL: https://issues.apache.org/jira/browse/MINIFICPP-695 > Project: NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Blocker > Labels: nanofi > > When testing recent changes the examples appear to not work due to a > mis-configuration of the client. Not sure when/what broke it specifically, > but we should ensure that examples function. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719452#comment-16719452 ] ASF GitHub Bot commented on NIFIREG-215: Github user bbende commented on a diff in the pull request: https://github.com/apache/nifi-registry/pull/149#discussion_r241190389 --- Diff: nifi-registry-core/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/ExtensionResource.java --- @@ -93,15 +94,25 @@ public ExtensionResource(final RegistryService registryService, responseContainer = "List" ) @ApiResponses({ @ApiResponse(code = 401, message = HttpStatusMessages.MESSAGE_401) }) -public Response getExtensionBundles() { +public Response getExtensionBundles( +@QueryParam("groupId") +@ApiParam("Optional groupId to filter results. The value may be an exact match, or a trailing wildcard, " + +"such as 'com.%' to select all bundles where the groupId starts with 'com.'.") +final String groupId, +@QueryParam("artifactId") +@ApiParam("Optional artifactId to filter results. The value may be an exact match, or a trailing wildcard, " + +"such as 'nifi-%' to select all bundles where the artifactId starts with 'nifi-'.") +final String artifactId) { --- End diff -- Good call, I hadn't really thought about how the SQL 'LIKE' was working and I was only really testing trailing wildcards, but you're right, I can remove that from the docs. > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719429#comment-16719429 ] ASF GitHub Bot commented on NIFIREG-215: Github user kevdoran commented on a diff in the pull request: https://github.com/apache/nifi-registry/pull/149#discussion_r241166717 --- Diff: nifi-registry-core/nifi-registry-data-model/src/main/java/org/apache/nifi/registry/bucket/Bucket.java --- @@ -41,6 +41,8 @@ private String description; +private Boolean allowExtensionBundleRedeploy; --- End diff -- Instead of a boolean flag here. I'm wondering if this would be better as a Enum for something like "redeploy policy" with values such as "NEVER, SNAPSHOTS, ALWAYS" or something like that? > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5820) NiFi built with Java 1.8 needs to run on Java 11
[ https://issues.apache.org/jira/browse/NIFI-5820?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719439#comment-16719439 ] ASF GitHub Bot commented on NIFI-5820: -- Github user jtstorck commented on the issue: https://github.com/apache/nifi/pull/3174 Rebased this against current master, but some additional updates need to be made along with some more local testing. Setting this back to WIP while I make these changes... > NiFi built with Java 1.8 needs to run on Java 11 > > > Key: NIFI-5820 > URL: https://issues.apache.org/jira/browse/NIFI-5820 > Project: Apache NiFi > Issue Type: Sub-task >Reporter: Jeff Storck >Assignee: Jeff Storck >Priority: Major > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719430#comment-16719430 ] ASF GitHub Bot commented on NIFIREG-215: Github user kevdoran commented on a diff in the pull request: https://github.com/apache/nifi-registry/pull/149#discussion_r241172387 --- Diff: nifi-registry-core/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/ExtensionResource.java --- @@ -93,15 +94,25 @@ public ExtensionResource(final RegistryService registryService, responseContainer = "List" ) @ApiResponses({ @ApiResponse(code = 401, message = HttpStatusMessages.MESSAGE_401) }) -public Response getExtensionBundles() { +public Response getExtensionBundles( +@QueryParam("groupId") +@ApiParam("Optional groupId to filter results. The value may be an exact match, or a trailing wildcard, " + +"such as 'com.%' to select all bundles where the groupId starts with 'com.'.") +final String groupId, +@QueryParam("artifactId") +@ApiParam("Optional artifactId to filter results. The value may be an exact match, or a trailing wildcard, " + +"such as 'nifi-%' to select all bundles where the artifactId starts with 'nifi-'.") +final String artifactId) { --- End diff -- These parameters are nice to have, and work as expected for me. One thing I noticed is that the documentation says _"... a trailing wildcard ..."_, which indicates wildcards can only be used at the end of the value. However in testing, I was able to use them anywhere in the value (at the beginning or middle of the value) and it worked (with the expected results as well). So maybe just update the documentation to remove the work "trailing"? > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719369#comment-16719369 ] ASF GitHub Bot commented on NIFIREG-215: Github user kevdoran commented on the issue: https://github.com/apache/nifi-registry/pull/149 Reviewing... > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5318) Implement NiFi test harness
[ https://issues.apache.org/jira/browse/NIFI-5318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719211#comment-16719211 ] ASF GitHub Bot commented on NIFI-5318: -- Github user MikeThomsen commented on the issue: https://github.com/apache/nifi/pull/3165 @peter-gergely-horvath Tried your latest change and still get these results: ``` [INFO] --- [INFO] Running org.apache.nifi.testharness.samples.NiFiFlowTest [INFO] Running org.apache.nifi.testharness.samples.NiFiMockFlowTest [INFO] [INFO] Results: [INFO] [INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] [INFO] BUILD FAILURE [INFO] [INFO] Total time: 01:46 min [INFO] Finished at: 2018-12-12T11:20:20-05:00 [INFO] Final Memory: 36M/602M [INFO] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (default-test) on project nifi-testharness: There are test failures. [ERROR] [ERROR] Please refer to /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire-reports for the individual test results. [ERROR] Please refer to dump files (if any exist) [date]-jvmRun[N].dump, [date].dumpstream and [date]-jvmRun[N].dumpstream. [ERROR] ExecutionException The forked VM terminated without properly saying goodbye. VM crash or System.exit called? [ERROR] Command was /bin/sh -c cd /Users/michaelthomsen/workspace/nifi/nifi-testharness/nifi_testharness_nifi_home && /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/bin/java -Xmx1G -Djava.net.preferIPv4Stack=true -jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire/surefirebooter5354893279908884469.jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire 2018-12-12T11-18-44_222-jvmRun1 surefire377069077642032tmp surefire_03864170411723641611tmp [ERROR] Error occurred in starting fork, check output in log [ERROR] Process Exit Code: 1 [ERROR] Crashed tests: [ERROR] org.apache.nifi.testharness.samples.NiFiFlowTest [ERROR] ExecutionException The forked VM terminated without properly saying goodbye. VM crash or System.exit called? [ERROR] Command was /bin/sh -c cd /Users/michaelthomsen/workspace/nifi/nifi-testharness/nifi_testharness_nifi_home && /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/bin/java -Xmx1G -Djava.net.preferIPv4Stack=true -jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire/surefirebooter8415059538712188018.jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire 2018-12-12T11-18-44_222-jvmRun1 surefire7043843761330522886tmp surefire_12826311853280960897tmp [ERROR] Error occurred in starting fork, check output in log [ERROR] Process Exit Code: 1 [ERROR] Crashed tests: [ERROR] org.apache.nifi.testharness.samples.NiFiMockFlowTest [ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: ExecutionException The forked VM terminated without properly saying goodbye. VM crash or System.exit called? [ERROR] Command was /bin/sh -c cd /Users/michaelthomsen/workspace/nifi/nifi-testharness/nifi_testharness_nifi_home && /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/bin/java -Xmx1G -Djava.net.preferIPv4Stack=true -jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire/surefirebooter5354893279908884469.jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire 2018-12-12T11-18-44_222-jvmRun1 surefire377069077642032tmp surefire_03864170411723641611tmp [ERROR] Error occurred in starting fork, check output in log [ERROR] Process Exit Code: 1 [ERROR] Crashed tests: [ERROR] org.apache.nifi.testharness.samples.NiFiFlowTest [ERROR] ExecutionException The forked VM terminated without properly saying goodbye. VM crash or System.exit called? [ERROR] Command was /bin/sh -c cd /Users/michaelthomsen/workspace/nifi/nifi-testharness/nifi_testharness_nifi_home && /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/bin/java -Xmx1G -Djava.net.preferIPv4Stack=true -jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire/surefirebooter8415059538712188018.jar /Users/michaelthomsen/workspace/nifi/nifi-testharness/target/surefire 2018-12-12T11-18-44_222-jvmRun1 surefire7043843761330522886tmp surefire_12826311853280960897tmp [ERROR] Error occurred in starting fork, check output in log [ERROR] Process Exit Code: 1 [ERROR] Crashed tests: [ERROR] org.apache.nifi.testharness.samp
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719106#comment-16719106 ] ASF GitHub Bot commented on MINIFICPP-479: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/460#discussion_r241048908 --- Diff: libminifi/include/core/state/Value.h --- @@ -74,94 +157,215 @@ class BoolValue : public Value { explicit BoolValue(bool value) : Value(value ? "true" : "false"), value(value) { +setTypeId(); + } + explicit BoolValue(const std::string &strvalue) + : Value(strvalue) { +bool l; +std::istringstream(strvalue) >> std::boolalpha >> l; +value = l; // avoid warnings } - bool getValue() { + + bool getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(int64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(uint64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(bool &ref) { +ref = value; +return true; + } + bool value; }; -class Int64Value : public Value { +class UInt64Value : public Value { public: - explicit Int64Value(uint64_t value) + explicit UInt64Value(uint64_t value) : Value(std::to_string(value)), value(value) { +setTypeId(); + } + explicit UInt64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoull(strvalue)) { +setTypeId(); } - uint64_t getValue() { + + uint64_t getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +if (value < std::numeric_limits::max()) { + ref = value; + return true; +} +return false; + } + + virtual bool getValue(uint64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } + uint64_t value; }; +class Int64Value : public Value { + public: + explicit Int64Value(int64_t value) + : Value(std::to_string(value)), +value(value) { +setTypeId(); + } + explicit Int64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoll(strvalue)) { +setTypeId(); + } + + int64_t getValue() { +return value; + } + protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(uint64_t &ref) { +if (value >= 0) { + ref = value; + return true; +} +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } -static inline std::shared_ptr createValue( -const bool &object) { + int64_t value; --- End diff -- Honestly I don't really like to hanem a member with different type but same name in each derived type. Why don't simply create value as a template class and use "using" directive to create Int64Value as value ? In my opinion it would require less code duplication. > Incorporate property validation information into manifest > - > > Key: MINIFICPP-479 > URL: https://issues.apache.org/jira/browse/MINIFICPP-479 > Project: NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Andrew Christianson >Assignee: Mr TheSegfault >Priority: Major > > High-level intent is to avoid round-trip to c2 to know that flow is valid > (or, invalid in common/trivial ways). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719107#comment-16719107 ] ASF GitHub Bot commented on MINIFICPP-479: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/460#discussion_r241051202 --- Diff: libminifi/src/processors/LogAttribute.cpp --- @@ -38,13 +38,23 @@ namespace apache { namespace nifi { namespace minifi { namespace processors { -core::Property LogAttribute::LogLevel("Log Level", "The Log Level to use when logging the Attributes", "info"); -core::Property LogAttribute::AttributesToLog("Attributes to Log", "A comma-separated list of Attributes to Log. If not specified, all attributes will be logged.", ""); -core::Property LogAttribute::AttributesToIgnore("Attributes to Ignore", "A comma-separated list of Attributes to ignore. If not specified, no attributes will be ignored.", ""); -core::Property LogAttribute::LogPayload("Log Payload", "If true, the FlowFile's payload will be logged, in addition to its attributes;" -"otherwise, just the Attributes will be logged.", -"false"); -core::Property LogAttribute::LogPrefix("Log prefix", "Log prefix appended to the log lines. It helps to distinguish the output of multiple LogAttribute processors.", ""); + +core::Property LogAttribute::LogLevel( +core::PropertyBuilder::createProperty("Log Level")->withDescription("The Log Level to use when logging the Attributes")->withAllowedValue("info")->withAllowedValue("trace") + ->withAllowedValue("error")->withAllowedValue("warn")->withAllowedValue("debug")->withDefaultValue("info")->build()); --- End diff -- I don't like this, withAllowedValue should be implemented as ``` template withAllowedValue(std::set) { ... } ``` This way it can be done as: ``` withAllowedValue({"Red", "Green", "Blue")) ``` > Incorporate property validation information into manifest > - > > Key: MINIFICPP-479 > URL: https://issues.apache.org/jira/browse/MINIFICPP-479 > Project: NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Andrew Christianson >Assignee: Mr TheSegfault >Priority: Major > > High-level intent is to avoid round-trip to c2 to know that flow is valid > (or, invalid in common/trivial ways). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719105#comment-16719105 ] ASF GitHub Bot commented on MINIFICPP-479: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/460#discussion_r241052650 --- Diff: libminifi/include/core/PropertyValidation.h --- @@ -0,0 +1,347 @@ +/** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef LIBMINIFI_INCLUDE_CORE_PROPERTYVALIDATION_H_ +#define LIBMINIFI_INCLUDE_CORE_PROPERTYVALIDATION_H_ + +#include "core/Core.h" +#include "core/state/Value.h" +#include "TypedValues.h" +#include "utils/StringUtils.h" +#include + +namespace org { +namespace apache { +namespace nifi { +namespace minifi { +namespace core { + +class ValidationResult; + +class ValidationResult { + public: + bool valid() const { +return valid_; + } + + class Builder { + public: +static Builder createBuilder() { + return Builder(); +} +Builder &isValid(bool valid) { + valid_ = valid; + return *this; +} +Builder &withSubject(const std::string &subject) { + subject_ = subject; + return *this; +} +Builder &withInput(const std::string &input) { + input_ = input; + return *this; +} + +ValidationResult build() { + return ValidationResult(*this); +} + + protected: +bool valid_; +std::string subject_; +std::string input_; +friend class ValidationResult; + }; + private: + + bool valid_; + std::string subject_; + std::string input_; + + ValidationResult(const Builder &builder) + : valid_(builder.valid_), +subject_(builder.subject_), +input_(builder.input_) { + } + + friend class Builder; +}; + +class PropertyValidator { + public: + + PropertyValidator(const std::string &name) + : name_(name) { + } + virtual ~PropertyValidator() { + + } + + std::string getName() const { +return name_; + } + + virtual ValidationResult validate(const std::string &subject, const std::shared_ptr &input) const = 0; + + virtual ValidationResult validate(const std::string &subject, const std::string &input) const = 0; + + protected: + template + ValidationResult _validate_internal(const std::string &subject, const std::shared_ptr &input) const { +if (std::dynamic_pointer_cast(input) != nullptr) { + return ValidationResult::Builder::createBuilder().withSubject(subject).withInput(input->getStringValue()).isValid(true).build(); +} else { + state::response::ValueNode vn; + vn = input->getStringValue(); + return validate(subject, input->getStringValue()); +} + + } + + std::string name_; +}; + +class AlwaysValid : public PropertyValidator { + bool always_valid_; + public: + AlwaysValid(bool isalwaysvalid, const std::string &name) + : always_valid_(isalwaysvalid), +PropertyValidator(name) { + + } + virtual ~AlwaysValid() { + } + ValidationResult validate(const std::string &subject, const std::shared_ptr &input) const { +return ValidationResult::Builder::createBuilder().withSubject(subject).withInput(input->getStringValue()).isValid(always_valid_).build(); + } + + ValidationResult validate(const std::string &subject, const std::string &input) const { +return ValidationResult::Builder::createBuilder().withSubject(subject).withInput(input).isValid(always_valid_).build(); + } + +}; + +class BooleanValidator : public PropertyValidator { + public: + BooleanValidator(const std::string &name) + : Pro
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719104#comment-16719104 ] ASF GitHub Bot commented on MINIFICPP-479: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/460#discussion_r241048231 --- Diff: libminifi/include/core/state/Value.h --- @@ -74,94 +157,215 @@ class BoolValue : public Value { explicit BoolValue(bool value) : Value(value ? "true" : "false"), value(value) { +setTypeId(); + } + explicit BoolValue(const std::string &strvalue) + : Value(strvalue) { +bool l; +std::istringstream(strvalue) >> std::boolalpha >> l; +value = l; // avoid warnings } - bool getValue() { + + bool getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(int64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(uint64_t &ref) { +if (ref == 1) { + ref = true; + return true; +} else if (ref == 0) { + ref = false; + return true; +} else { + return false; +} + } + + virtual bool getValue(bool &ref) { +ref = value; +return true; + } + bool value; }; -class Int64Value : public Value { +class UInt64Value : public Value { public: - explicit Int64Value(uint64_t value) + explicit UInt64Value(uint64_t value) : Value(std::to_string(value)), value(value) { +setTypeId(); + } + explicit UInt64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoull(strvalue)) { +setTypeId(); } - uint64_t getValue() { + + uint64_t getValue() const { return value; } protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +if (value < std::numeric_limits::max()) { + ref = value; + return true; +} +return false; + } + + virtual bool getValue(uint64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } + uint64_t value; }; +class Int64Value : public Value { + public: + explicit Int64Value(int64_t value) + : Value(std::to_string(value)), +value(value) { +setTypeId(); + } + explicit Int64Value(const std::string &strvalue) + : Value(strvalue), +value(std::stoll(strvalue)) { +setTypeId(); + } + + int64_t getValue() { +return value; + } + protected: + + virtual bool getValue(int &ref) { +return false; + } + + virtual bool getValue(int64_t &ref) { +ref = value; +return true; + } + + virtual bool getValue(uint64_t &ref) { +if (value >= 0) { + ref = value; + return true; +} +return true; + } + + virtual bool getValue(bool &ref) { +return false; + } -static inline std::shared_ptr createValue( -const bool &object) { + int64_t value; +}; + +static inline std::shared_ptr createValue(const bool &object) { return std::make_shared(object); } -static inline std::shared_ptr createValue( -const char *object) { +static inline std::shared_ptr createValue(const char *object) { return std::make_shared(object); } -static inline std::shared_ptr createValue( -char *object) { +static inline std::shared_ptr createValue(char *object) { return std::make_shared(std::string(object)); } -static inline std::shared_ptr createValue( -const std::string &object) { +static inline std::shared_ptr createValue(const std::string &object) { return std::make_shared(object); } - -static inline std::shared_ptr createValue( -const uint32_t &object) { - return std::make_shared(object); +static inline std::shared_ptr createValue(const uint32_t &object) { + return std::make_shared(object); +} +#if ( defi
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719062#comment-16719062 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on the issue: https://github.com/apache/nifi/pull/3105 Merged, thanks @zenfenan > Create a Connection Pooling service implementation to be used in Cassandra > processors > - > > Key: NIFI-5621 > URL: https://issues.apache.org/jira/browse/NIFI-5621 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Sivaprasanna Sethuraman >Assignee: Sivaprasanna Sethuraman >Priority: Major > Fix For: 1.9.0 > > > Like how the Relational Database processors leverage 'DBCPConnectionPool' > controller service, there should be one that could be used by the processors > from Cassandra bundle. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719060#comment-16719060 ] ASF GitHub Bot commented on NIFI-5621: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3105 > Create a Connection Pooling service implementation to be used in Cassandra > processors > - > > Key: NIFI-5621 > URL: https://issues.apache.org/jira/browse/NIFI-5621 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Sivaprasanna Sethuraman >Assignee: Sivaprasanna Sethuraman >Priority: Major > Fix For: 1.9.0 > > > Like how the Relational Database processors leverage 'DBCPConnectionPool' > controller service, there should be one that could be used by the processors > from Cassandra bundle. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719054#comment-16719054 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r241047229 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-nar/src/main/resources/META-INF/LICENSE --- @@ -0,0 +1,369 @@ + + Apache License + Version 2.0, January 2004 +http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, n
[jira] [Commented] (NIFI-5456) PutKinesisStream - Fails to work with AWS Private Link endpoint
[ https://issues.apache.org/jira/browse/NIFI-5456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16719047#comment-16719047 ] ASF GitHub Bot commented on NIFI-5456: -- Github user zenfenan commented on a diff in the pull request: https://github.com/apache/nifi/pull/2968#discussion_r241044902 --- Diff: nifi-nar-bundles/nifi-aws-bundle/nifi-aws-abstract-processors/src/main/java/org/apache/nifi/processors/aws/AbstractAWSProcessor.java --- @@ -286,7 +286,7 @@ protected void initializeRegionAndEndpoint(ProcessContext context) { final String urlstr = StringUtils.trimToEmpty(context.getProperty(ENDPOINT_OVERRIDE).evaluateAttributeExpressions().getValue()); if (!urlstr.isEmpty()) { getLogger().info("Overriding endpoint with {}", new Object[]{urlstr}); -this.client.setEndpoint(urlstr); +this.client.setEndpoint(urlstr, this.client.getServiceName(), this.region.getName()); --- End diff -- Thanks @amcdonaldccri for pointing this out. I'll work on fixing it. > PutKinesisStream - Fails to work with AWS Private Link endpoint > --- > > Key: NIFI-5456 > URL: https://issues.apache.org/jira/browse/NIFI-5456 > Project: Apache NiFi > Issue Type: Bug > Components: Extensions >Affects Versions: 1.6.0, 1.7.1 > Environment: RedHat 6 >Reporter: Ariel Godinez >Assignee: Sivaprasanna Sethuraman >Priority: Major > Labels: easyfix > Fix For: 1.8.0 > > Attachments: > 0001-NIFI-5456-AWS-clients-now-work-with-private-link-end.patch > > > NiFi version: 1.6.0 > PutKinesisStream fails to put due to invalid signing information when using > an AWS Private Link as the endpoint override URL. The endpoint override URL > pattern for private links is like below along with the error that NiFi > outputs when we attempt to use this type of URL as the 'Endpoint Override > URL' property value. > Endpoint Override URL: > [https://vpce-|https://vpce-/].kinesis.us-east-2.vpce.amazonaws.com > ERROR [Timer-Driven Process Thread-11] "o.a.n.p.a.k.stream.PutKinesisStream" > PutKinesisStream[id=4c314e25-0164-1000--9bd79c77] Failed to publish > due to exception com.amazonaws.services.kinesis.model.AmazonKinesisException: > Credential should be scoped to a valid region, not 'vpce'. (Service: > AmazonKinesis; Status Code: 400; Error Code: InvalidSignatureException; > Request ID: 6330b83c-a64e-4acf-b892-a505621cf78e) flowfiles > [StandardFlowFileRecord[uuid=ba299cec-7cbf-4750-a766-c348b5cd9c73,claim=StandardContentClaim > [resourceClaim=StandardResourceClaim[id=1532469012962-1, > container=content002, section=1], offset=2159750, > length=534625],offset=0,name=900966573101260,size=534625]] > > It looks like 'vpce' is being extracted from the url as the region name when > it should be getting 'us-east-2'. We were able to get this processor to work > correctly by explicitly passing in the region and service using > 'setEndpoint(String endpoint, String serviceName, String regionId)' instead > of 'setEndpoint(String endpoint)' in > 'nifi/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-abstract-processors/src/main/java/org/apache/nifi/processors/aws/AbstractAWSProcessor.java' > line 289 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718950#comment-16718950 ] ASF GitHub Bot commented on NIFI-5621: -- Github user zenfenan commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r241005492 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-nar/src/main/resources/META-INF/LICENSE --- @@ -0,0 +1,369 @@ + + Apache License + Version 2.0, January 2004 +http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-
[jira] [Commented] (MINIFICPP-695) NanoFi Examples appear to be broken
[ https://issues.apache.org/jira/browse/MINIFICPP-695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718915#comment-16718915 ] ASF GitHub Bot commented on MINIFICPP-695: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/459#discussion_r240994771 --- Diff: nanofi/examples/CMakeLists.txt --- @@ -50,11 +50,11 @@ if (WIN32) set(LINK_FLAGS "/WHOLEARCHIVE") set(LINK_END_FLAGS "") elseif (APPLE) -set(LINK_FLAGS "-Wl,-all_load") +set(LINK_FLAGS "") --- End diff -- Good spot, the change made it better and worse as well. I debugged cmake and found that the problem is caused by "unifying" beginning and ending argument of whole-archive. This means that in case multiple makefiles specifies them, only the first specification takes effect. As other platforms don't need closing argument, the issue is Linux-specific. This is the original linker command generated: ``` /usr/bin/c++ -std=c++11 -DOPENSSL_SUPPORT -std=c++11 -std=c++11 -O3 -DNDEBUG -rdynamic CMakeFiles/generate_flow.dir/generate_flow.c.o -o generate_flow ../libnanofi.a -lpthread -Wl,--whole-archive ../../extensions/http-curl/libminifi-http-curl.a -Wl,--no-whole-archive ../../libminifi/libminifi.a ../../libminifi/libcore-minifi.a ../../thirdparty/yaml-cpp-yaml-cpp-20171024/libyaml-cpp.a ../../extensions/expression-language/libminifi-expression-language-extensions.a ../../thirdparty/uuid/libuuid.a ../../extensions/expression-language/date/libtz.a -lcurl -ldl -lssl -lcrypto ../../extensions/civetweb/libminifi-civet-extensions.a ../../thirdparty/civetweb-1.10/src/libcivetweb.a -lpthread ../../thirdparty/civetweb-1.10/src/libcivetweb-cpp.a -l ``` Which is wrong as it only specifies whole-archive for libminifi-http-curl.a, but the processors are in liminifi.a, so they are stripped out. The first version of my change made it to the opposite: ``` /usr/bin/c++ -std=c++11 -DOPENSSL_SUPPORT -std=c++11 -std=c++11 -O3 -DNDEBUG -rdynamic CMakeFiles/generate_flow.dir/generate_flow.c.o -o generate_flow ../libnanofi.a -lpthread ../../extensions/http-curl/libminifi-http-curl.a -Wl,--whole-archive ../../libminifi/libminifi.a ../../libminifi/libcore-minifi.a ../../thirdparty/yaml-cpp-yaml-cpp-20171024/libyaml-cpp.a ../../extensions/expression-language/libminifi-expression-language-extensions.a ../../thirdparty/uuid/libuuid.a ../../extensions/expression-language/date/libtz.a -Wl,--no-whole-archive -lcurl -ldl -lssl -lcrypto ../../extensions/civetweb/libminifi-civet-extensions.a ../../thirdparty/civetweb-1.10/src/libcivetweb.a -lpthread ../../thirdparty/civetweb-1.10/src/libcivetweb-cpp.a -lz ``` In this case libminifi was fine, but libminifi-http-curl is left without whole-archive flag. With the current change: ``` /usr/bin/c++ -std=c++11 -DOPENSSL_SUPPORT -std=c++11 -std=c++11 -O3 -DNDEBUG -rdynamic CMakeFiles/generate_flow.dir/generate_flow.c.o -o generate_flow ../libnanofi.a -lpthread -Wl,--whole-archive ../../extensions/http-curl/libminifi-http-curl.a ../../libminifi/libminifi.a ../../libminifi/libcore-minifi.a ../../thirdparty/yaml-cpp-yaml-cpp-20171024/libyaml-cpp.a ../../extensions/expression-language/libminifi-expression-language-extensions.a ../../thirdparty/uuid/libuuid.a ../../extensions/expression-language/date/libtz.a -Wl,--no-whole-archive -lcurl -ldl -lssl -lcrypto ../../extensions/civetweb/libminifi-civet-extensions.a ../../thirdparty/civetweb-1.10/src/libcivetweb.a -lpthread ../../thirdparty/civetweb-1.10/src/libcivetweb-cpp.a -lz ``` This looks good, verified curl symbols as well. > NanoFi Examples appear to be broken > --- > > Key: MINIFICPP-695 > URL: https://issues.apache.org/jira/browse/MINIFICPP-695 > Project: NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Blocker > Labels: nanofi > > When testing recent changes the examples appear to not work due to a > mis-configuration of the client. Not sure when/what broke it specifically, > but we should ensure that examples function. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5890) Add Timestamp -> Date conversion support to DataTypeUtils
[ https://issues.apache.org/jira/browse/NIFI-5890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718835#comment-16718835 ] ASF GitHub Bot commented on NIFI-5890: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3214#discussion_r240980560 --- Diff: nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-processors/src/main/java/org/apache/nifi/processors/elasticsearch/PutElasticsearchHttpRecord.java --- @@ -404,7 +404,7 @@ public void onTrigger(final ProcessContext context, final ProcessSession session reason = itemNode.findPath("reason").asText(); } errorReason = reason; -logger.error("Failed to process {} due to {}, transferring to failure", +talogger.error("Failed to process {} due to {}, transferring to failure", --- End diff -- Yeah, definitely not. Thanks! > Add Timestamp -> Date conversion support to DataTypeUtils > - > > Key: NIFI-5890 > URL: https://issues.apache.org/jira/browse/NIFI-5890 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.8.0 >Reporter: Mike Thomsen >Assignee: Mike Thomsen >Priority: Major > Fix For: 1.9.0 > > > Timestamp to Date conversion fails with following Exception with > rel/nifi-1.8.0 branch: > {code} > [ERROR] > testTimestampToDate(org.apache.nifi.serialization.record.TestDataTypeUtils) > Time elapsed: 0.008 s <<< ERROR! > org.apache.nifi.serialization.record.util.IllegalTypeConversionException: > Cannot convert value [2018-12-12 10:45:26.478] of type class > java.sql.Timestamp to Date for field null > at > org.apache.nifi.serialization.record.TestDataTypeUtils.testTimestampToDate(TestDataTypeUtils.java:67) > {code} > But NIFI-5333 added supporting this. This JIRA adds an unit test case to > assert that conversion works. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-693) getProperty should rely on user provided allocated buffers.
[ https://issues.apache.org/jira/browse/MINIFICPP-693?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718391#comment-16718391 ] ASF GitHub Bot commented on MINIFICPP-693: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi-minifi-cpp/pull/458 > getProperty should rely on user provided allocated buffers. > > > Key: MINIFICPP-693 > URL: https://issues.apache.org/jira/browse/MINIFICPP-693 > Project: NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Major > Labels: nanofi > > Assuming this is a provision from the current release we should be able to > change this to getproperty(XXX,user pntr, user provided size) and leave > allocation up to the consumer. This will likely be more C prototypical and > congruent with where the API is headed. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-695) NanoFi Examples appear to be broken
[ https://issues.apache.org/jira/browse/MINIFICPP-695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718386#comment-16718386 ] ASF GitHub Bot commented on MINIFICPP-695: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/459#discussion_r240863016 --- Diff: nanofi/examples/CMakeLists.txt --- @@ -50,11 +50,11 @@ if (WIN32) set(LINK_FLAGS "/WHOLEARCHIVE") set(LINK_END_FLAGS "") elseif (APPLE) -set(LINK_FLAGS "-Wl,-all_load") +set(LINK_FLAGS "") --- End diff -- Unfortunately this doesn't solve the problem. This only causes the curl support to not be built. I'll take a closer look tomorrow. Thanks! > NanoFi Examples appear to be broken > --- > > Key: MINIFICPP-695 > URL: https://issues.apache.org/jira/browse/MINIFICPP-695 > Project: NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Blocker > Labels: nanofi > > When testing recent changes the examples appear to not work due to a > mis-configuration of the client. Not sure when/what broke it specifically, > but we should ensure that examples function. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5889) Improve documentation on S2S Reporting tasks
[ https://issues.apache.org/jira/browse/NIFI-5889?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718379#comment-16718379 ] ASF GitHub Bot commented on NIFI-5889: -- Github user ijokarumawak commented on the issue: https://github.com/apache/nifi/pull/3215 LGTM +1, merging. Thanks @pvillard31! > Improve documentation on S2S Reporting tasks > > > Key: NIFI-5889 > URL: https://issues.apache.org/jira/browse/NIFI-5889 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website, Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > > Improve the documentation on "Destination URL" property of the S2S reporting > tasks. Right now, users might think the destination URL represent the actual > node(s) where the data will be sent. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5889) Improve documentation on S2S Reporting tasks
[ https://issues.apache.org/jira/browse/NIFI-5889?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718382#comment-16718382 ] ASF GitHub Bot commented on NIFI-5889: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3215 > Improve documentation on S2S Reporting tasks > > > Key: NIFI-5889 > URL: https://issues.apache.org/jira/browse/NIFI-5889 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website, Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > Fix For: 1.9.0 > > > Improve the documentation on "Destination URL" property of the S2S reporting > tasks. Right now, users might think the destination URL represent the actual > node(s) where the data will be sent. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5890) Add Timestamp -> Date conversion support to DataTypeUtils
[ https://issues.apache.org/jira/browse/NIFI-5890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718360#comment-16718360 ] ASF GitHub Bot commented on NIFI-5890: -- Github user ijokarumawak commented on a diff in the pull request: https://github.com/apache/nifi/pull/3214#discussion_r240856001 --- Diff: nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-processors/src/main/java/org/apache/nifi/processors/elasticsearch/PutElasticsearchHttpRecord.java --- @@ -404,7 +404,7 @@ public void onTrigger(final ProcessContext context, final ProcessSession session reason = itemNode.findPath("reason").asText(); } errorReason = reason; -logger.error("Failed to process {} due to {}, transferring to failure", +talogger.error("Failed to process {} due to {}, transferring to failure", --- End diff -- I believe this change is not intentional. > Add Timestamp -> Date conversion support to DataTypeUtils > - > > Key: NIFI-5890 > URL: https://issues.apache.org/jira/browse/NIFI-5890 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.8.0 >Reporter: Mike Thomsen >Assignee: Mike Thomsen >Priority: Major > > Timestamp to Date conversion fails with following Exception with > rel/nifi-1.8.0 branch: > {code} > [ERROR] > testTimestampToDate(org.apache.nifi.serialization.record.TestDataTypeUtils) > Time elapsed: 0.008 s <<< ERROR! > org.apache.nifi.serialization.record.util.IllegalTypeConversionException: > Cannot convert value [2018-12-12 10:45:26.478] of type class > java.sql.Timestamp to Date for field null > at > org.apache.nifi.serialization.record.TestDataTypeUtils.testTimestampToDate(TestDataTypeUtils.java:67) > {code} > But NIFI-5333 added supporting this. This JIRA adds an unit test case to > assert that conversion works. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5890) Add Timestamp -> Date conversion support to DataTypeUtils
[ https://issues.apache.org/jira/browse/NIFI-5890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718370#comment-16718370 ] ASF GitHub Bot commented on NIFI-5890: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3214 > Add Timestamp -> Date conversion support to DataTypeUtils > - > > Key: NIFI-5890 > URL: https://issues.apache.org/jira/browse/NIFI-5890 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions >Affects Versions: 1.8.0 >Reporter: Mike Thomsen >Assignee: Mike Thomsen >Priority: Major > Fix For: 1.9.0 > > > Timestamp to Date conversion fails with following Exception with > rel/nifi-1.8.0 branch: > {code} > [ERROR] > testTimestampToDate(org.apache.nifi.serialization.record.TestDataTypeUtils) > Time elapsed: 0.008 s <<< ERROR! > org.apache.nifi.serialization.record.util.IllegalTypeConversionException: > Cannot convert value [2018-12-12 10:45:26.478] of type class > java.sql.Timestamp to Date for field null > at > org.apache.nifi.serialization.record.TestDataTypeUtils.testTimestampToDate(TestDataTypeUtils.java:67) > {code} > But NIFI-5333 added supporting this. This JIRA adds an unit test case to > assert that conversion works. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-479) Incorporate property validation information into manifest
[ https://issues.apache.org/jira/browse/MINIFICPP-479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16718326#comment-16718326 ] ASF GitHub Bot commented on MINIFICPP-479: -- GitHub user phrocker opened a pull request: https://github.com/apache/nifi-minifi-cpp/pull/460 MINIFICPP-479: Add processor property descriptor updates. WIP Thank you for submitting a contribution to Apache NiFi - MiNiFi C++. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with MINIFICPP- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file? - [ ] If applicable, have you updated the NOTICE file? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/phrocker/nifi-minifi-cpp MINIFICPP-479 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi-minifi-cpp/pull/460.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #460 commit 371ab8cf0cbcd25c4924696ffe1c7215da2c2977 Author: Marc Parisi Date: 2018-08-12T17:22:00Z MINIFICPP-479 and others: commit initial stuff get back on track MINIFICPP-479: begin incorporating validators MINIFICPP-479: Adding code found on laptop Found more code in stashed repos commit ce89c4dfc6839ef071a8488af61abbefd0038027 Author: Marc Parisi Date: 2018-08-19T16:00:00Z MINIFICPP-479: inc commit .. does not work fully commit 72df0111bb5c6ae03be38c0471578178e7945365 Author: Marc Parisi Date: 2018-12-11T01:03:34Z MINIFICPP-479: Make updates to how values can be used MINIFICPP-479: Add comments commit 54fc1f36cea1f7bb30e208acf95487c29b0fe2af Author: Marc Parisi Date: 2018-12-12T01:12:58Z MINIFICPP-479: Update processors > Incorporate property validation information into manifest > - > > Key: MINIFICPP-479 > URL: https://issues.apache.org/jira/browse/MINIFICPP-479 > Project: NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Andrew Christianson >Assignee: Mr TheSegfault >Priority: Major > > High-level intent is to avoid round-trip to c2 to know that flow is valid > (or, invalid in common/trivial ways). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5889) Improve documentation on S2S Reporting tasks
[ https://issues.apache.org/jira/browse/NIFI-5889?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717506#comment-16717506 ] ASF GitHub Bot commented on NIFI-5889: -- GitHub user pvillard31 opened a pull request: https://github.com/apache/nifi/pull/3215 NIFI-5889 - changed the wording about Destination URL in S2S RTs Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/pvillard31/nifi NIFI-5889 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3215.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3215 commit e9503171ede6b874648251ceefe85ef88e6388dd Author: Pierre Villard Date: 2018-12-11T16:36:45Z NIFI-5889 - changed the wording about Destination URL in S2S RTs > Improve documentation on S2S Reporting tasks > > > Key: NIFI-5889 > URL: https://issues.apache.org/jira/browse/NIFI-5889 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website, Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > > Improve the documentation on "Destination URL" property of the S2S reporting > tasks. Right now, users might think the destination URL represent the actual > node(s) where the data will be sent. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5890) Add Timestamp -> Date conversion support to DataTypeUtils
[ https://issues.apache.org/jira/browse/NIFI-5890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717466#comment-16717466 ] ASF GitHub Bot commented on NIFI-5890: -- GitHub user MikeThomsen opened a pull request: https://github.com/apache/nifi/pull/3214 NIFI-5890 Added a unit test that proves that 1.9 fixes a bug in the d… …ate conversion behavior in 1.8. Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/MikeThomsen/nifi NIFI-5890 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3214.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3214 commit ef8bac12ba38d6eaeae6ccb45238c2046126a8d4 Author: Mike Thomsen Date: 2018-12-11T16:18:52Z NIFI-5890 Added a unit test that proves that 1.9 fixes a bug in the date conversion behavior in 1.8. > Add Timestamp -> Date conversion support to DataTypeUtils > - > > Key: NIFI-5890 > URL: https://issues.apache.org/jira/browse/NIFI-5890 > Project: Apache NiFi > Issue Type: New Feature >Affects Versions: 1.8.0 >Reporter: Mike Thomsen >Assignee: Mike Thomsen >Priority: Major > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFIREG-215) Extension Bundle Improvements
[ https://issues.apache.org/jira/browse/NIFIREG-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717426#comment-16717426 ] ASF GitHub Bot commented on NIFIREG-215: GitHub user bbende opened a pull request: https://github.com/apache/nifi-registry/pull/149 NIFIREG-215 Extension Bundle Improvements I left the changes as separate commits in order to more easily review each change on it's own, but feel free to squash upon merging. You can merge this pull request into a Git repository by running: $ git pull https://github.com/bbende/nifi-registry NIFIREG-215 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi-registry/pull/149.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #149 commit dee999b3224240af4292d1a81d2f1a9f2cfe59d7 Author: Bryan Bende Date: 2018-12-03T19:22:15Z NIFIREG-215 Adding content size field extension bundle version commit 8fced330880f90fe431a50332c9e0a3b378d29a1 Author: Bryan Bende Date: 2018-12-04T17:03:34Z NIFIREG-215 Adding optional filters to the get all bundles end-point commit f884a79ce0b5a369f0fd370d1a5858d50d569f9d Author: Bryan Bende Date: 2018-12-04T17:13:07Z NIFIREG-215 Bumping minor versions of spring boot and spring security commit 45955c66416be86a352387d251d55b139399a4fb Author: Bryan Bende Date: 2018-12-04T19:28:19Z NIFIREG-215 Adding /bundles/versions with filter params commit f3bed26efb6e06bd7c78bc20186a15be08a22d2d Author: Bryan Bende Date: 2018-12-04T20:25:28Z NIFIREG-215 Added new client method to return an optional checksum for a given group, artifact, and version commit 52a84bfc99fe09b91e9eef824aa9536205d3784c Author: Bryan Bende Date: 2018-12-10T21:51:38Z NIFIREG-215 - Adding support for SNAPSHOT versions commit 3bbb4890a2ee9e7b3c2421a56ca6f2c5106bc6b5 Author: Bryan Bende Date: 2018-12-11T15:41:08Z NIFIREG-215 Adding flag on buckets to indicate if redeploying extension bundle versions is allowed > Extension Bundle Improvements > - > > Key: NIFIREG-215 > URL: https://issues.apache.org/jira/browse/NIFIREG-215 > Project: NiFi Registry > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Labels: Extension_Registry > Fix For: 0.4.0 > > > This ticket is to implement some additional improvements to the work done in > NIFIREG-211. > * Store file size of a bundle in the DB and make it available in retrieved > objects > * Provide a method to check if a bundle exists (true or false) > * Provide an option to allow uploading and overwriting an existing bundle > * Consider making snapshots a special version that can always be overridden -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717391#comment-16717391 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240660225 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-nar/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,291 @@ +nifi-cassandra-services-nar +Copyright 2016 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +** +Apache Software License v2 +** + +The following binary components are provided under the Apache Software License v2 + + (ASLv2) DataStax Java Driver for Apache Cassandra - Core + The following NOTICE information applies: +DataStax Java Driver for Apache Cassandra - Core +Copyright (C) 2012-2017 DataStax Inc. + + (ASLv2) Jackson JSON processor +The following NOTICE information applies: + # Jackson JSON processor + + Jackson is a high-performance, Free/Open Source JSON processing library. + It was originally written by Tatu Saloranta (tatu.salora...@iki.fi), and has + been in development since 2007. + It is currently developed by a community of developers, as well as supported + commercially by FasterXML.com. + + ## Licensing + + Jackson core and extension components may licensed under different licenses. + To find the details that apply to this artifact see the accompanying LICENSE file. + For more information, including possible other licensing options, contact + FasterXML.com (http://fasterxml.com). + + ## Credits + + A list of contributors may be found from CREDITS file, which is included + in some artifacts (usually source distributions); but is always available + from the source code management (SCM) system project uses. + + (ASLv2) Apache Commons Codec +The following NOTICE information applies: + Apache Commons Codec + Copyright 2002-2014 The Apache Software Foundation + + src/test/org/apache/commons/codec/language/DoubleMetaphoneTest.java + contains test data from http://aspell.net/test/orig/batch0.tab. + Copyright (C) 2002 Kevin Atkinson (kev...@gnu.org) + + === + + The content of package org.apache.commons.codec.language.bm has been translated + from the original php source code available at http://stevemorse.org/phoneticinfo.htm + with permission from the original authors. + Original source copyright: + Copyright (c) 2008 Alexander Beider & Stephen P. Morse. + + (ASLv2) Apache Commons Lang +The following NOTICE information applies: + Apache Commons Lang + Copyright 2001-2017 The Apache Software Foundation + + This product includes software from the Spring Framework, + under the Apache License 2.0 (see: StringUtils.containsWhitespace()) + + (ASLv2) Guava +The following NOTICE information applies: + Guava + Copyright 2015 The Guava Authors + + (ASLv2) JSON-SMART +The following NOTICE information applies: +Copyright 2011 JSON-SMART authors + + (ASLv2) Dropwizard Metrics +The following NOTICE information applies: + Copyright (c) 2010-2013 Coda Hale, Yammer.com + + (ASLv2) The Netty Project + The following NOTICE information applies: + Copyright 2014 The Netty Project + --- + This product contains the extensions to Java Collections Framework which has + been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene: + + * LICENSE: + * license/LICENSE.jsr166y.txt (Public Domain) + * HOMEPAGE: + * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/ + * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/ + + This product contains a modified version of Robert Harder's Public Domain + Base64 Encoder and Decoder, which can be obtained at: + + * LICENSE: + * license/LICENSE.base64.txt (Public Domain) + * HOMEPAGE: + * http://iharder.sourceforge.net/current/java/base64/ + + This product contains a modified portion of 'Webbit', an event based + WebSocket and HTTP server, which can be obtained at:
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717366#comment-16717366 ] ASF GitHub Bot commented on NIFI-5621: -- Github user zenfenan commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240654783 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-nar/src/main/resources/META-INF/LICENSE --- @@ -0,0 +1,369 @@ + + Apache License + Version 2.0, January 2004 +http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717389#comment-16717389 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240659974 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-nar/src/main/resources/META-INF/LICENSE --- @@ -0,0 +1,369 @@ + + Apache License + Version 2.0, January 2004 +http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, n
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717367#comment-16717367 ] ASF GitHub Bot commented on NIFI-5621: -- Github user zenfenan commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240655171 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-nar/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,291 @@ +nifi-cassandra-services-nar +Copyright 2016 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +** +Apache Software License v2 +** + +The following binary components are provided under the Apache Software License v2 + + (ASLv2) DataStax Java Driver for Apache Cassandra - Core + The following NOTICE information applies: +DataStax Java Driver for Apache Cassandra - Core +Copyright (C) 2012-2017 DataStax Inc. + + (ASLv2) Jackson JSON processor +The following NOTICE information applies: + # Jackson JSON processor + + Jackson is a high-performance, Free/Open Source JSON processing library. + It was originally written by Tatu Saloranta (tatu.salora...@iki.fi), and has + been in development since 2007. + It is currently developed by a community of developers, as well as supported + commercially by FasterXML.com. + + ## Licensing + + Jackson core and extension components may licensed under different licenses. + To find the details that apply to this artifact see the accompanying LICENSE file. + For more information, including possible other licensing options, contact + FasterXML.com (http://fasterxml.com). + + ## Credits + + A list of contributors may be found from CREDITS file, which is included + in some artifacts (usually source distributions); but is always available + from the source code management (SCM) system project uses. + + (ASLv2) Apache Commons Codec +The following NOTICE information applies: + Apache Commons Codec + Copyright 2002-2014 The Apache Software Foundation + + src/test/org/apache/commons/codec/language/DoubleMetaphoneTest.java + contains test data from http://aspell.net/test/orig/batch0.tab. + Copyright (C) 2002 Kevin Atkinson (kev...@gnu.org) + + === + + The content of package org.apache.commons.codec.language.bm has been translated + from the original php source code available at http://stevemorse.org/phoneticinfo.htm + with permission from the original authors. + Original source copyright: + Copyright (c) 2008 Alexander Beider & Stephen P. Morse. + + (ASLv2) Apache Commons Lang +The following NOTICE information applies: + Apache Commons Lang + Copyright 2001-2017 The Apache Software Foundation + + This product includes software from the Spring Framework, + under the Apache License 2.0 (see: StringUtils.containsWhitespace()) + + (ASLv2) Guava +The following NOTICE information applies: + Guava + Copyright 2015 The Guava Authors + + (ASLv2) JSON-SMART +The following NOTICE information applies: +Copyright 2011 JSON-SMART authors + + (ASLv2) Dropwizard Metrics +The following NOTICE information applies: + Copyright (c) 2010-2013 Coda Hale, Yammer.com + + (ASLv2) The Netty Project + The following NOTICE information applies: + Copyright 2014 The Netty Project + --- + This product contains the extensions to Java Collections Framework which has + been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene: + + * LICENSE: + * license/LICENSE.jsr166y.txt (Public Domain) + * HOMEPAGE: + * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/ + * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/ + + This product contains a modified version of Robert Harder's Public Domain + Base64 Encoder and Decoder, which can be obtained at: + + * LICENSE: + * license/LICENSE.base64.txt (Public Domain) + * HOMEPAGE: + * http://iharder.sourceforge.net/current/java/base64/ + + This product contains a modified portion of 'Webbit', an event based + WebSocket and HTTP server, which can be obtained at:
[jira] [Commented] (MINIFICPP-695) NanoFi Examples appear to be broken
[ https://issues.apache.org/jira/browse/MINIFICPP-695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717342#comment-16717342 ] ASF GitHub Bot commented on MINIFICPP-695: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/459#discussion_r240643845 --- Diff: nanofi/examples/CMakeLists.txt --- @@ -50,11 +50,11 @@ if (WIN32) set(LINK_FLAGS "/WHOLEARCHIVE") set(LINK_END_FLAGS "") elseif (APPLE) -set(LINK_FLAGS "-Wl,-all_load") +set(LINK_FLAGS "") --- End diff -- ![alt text](http://thumbpress.com/wp-content/uploads/2013/05/I-Have-No-Idea-What-Im-Doing-2.jpg "What I am doing?") Processor symbols are part of libminifi, which is not linked here directly. In case of indirect linkage (libminifi is linked via nanofi and/or libminifi-http-curl), it seems that all_load just make it worse. I used the following command to verify the symbols being present in the binaries: ``` find . -type f | perl -lne 'print if -B' | xargs nm -a --print-file-name | grep -i "generateflowfile" | cut -d ':' -f1 | sort -u | grep -vi "test" ``` > NanoFi Examples appear to be broken > --- > > Key: MINIFICPP-695 > URL: https://issues.apache.org/jira/browse/MINIFICPP-695 > Project: NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Blocker > Labels: nanofi > > When testing recent changes the examples appear to not work due to a > mis-configuration of the client. Not sure when/what broke it specifically, > but we should ensure that examples function. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-695) NanoFi Examples appear to be broken
[ https://issues.apache.org/jira/browse/MINIFICPP-695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717314#comment-16717314 ] ASF GitHub Bot commented on MINIFICPP-695: -- GitHub user arpadboda opened a pull request: https://github.com/apache/nifi-minifi-cpp/pull/459 MINIFICPP-695 - NanoFi Examples appear to be broken Thank you for submitting a contribution to Apache NiFi - MiNiFi C++. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with MINIFICPP- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file? - [ ] If applicable, have you updated the NOTICE file? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/arpadboda/nifi-minifi-cpp MINIFICPP-695 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi-minifi-cpp/pull/459.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #459 commit f8d01f20a77857fc4fae0ebfca0bada22cc20963 Author: Arpad Boda Date: 2018-12-11T14:54:31Z MINIFICPP-695 - NanoFi Examples appear to be broken > NanoFi Examples appear to be broken > --- > > Key: MINIFICPP-695 > URL: https://issues.apache.org/jira/browse/MINIFICPP-695 > Project: NiFi MiNiFi C++ > Issue Type: Bug >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Blocker > Labels: nanofi > > When testing recent changes the examples appear to not work due to a > mis-configuration of the client. Not sure when/what broke it specifically, > but we should ensure that examples function. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717028#comment-16717028 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240586483 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-api-nar/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,226 @@ +nifi-cassandra-services-api-nar +Copyright 2016 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +** +Apache Software License v2 +** + + (ASLv2) The Netty Project --- End diff -- Netty looks good. > Create a Connection Pooling service implementation to be used in Cassandra > processors > - > > Key: NIFI-5621 > URL: https://issues.apache.org/jira/browse/NIFI-5621 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Sivaprasanna Sethuraman >Assignee: Sivaprasanna Sethuraman >Priority: Major > > Like how the Relational Database processors leverage 'DBCPConnectionPool' > controller service, there should be one that could be used by the processors > from Cassandra bundle. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717029#comment-16717029 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240587170 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-api-nar/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,226 @@ +nifi-cassandra-services-api-nar +Copyright 2016 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +** +Apache Software License v2 +** + + (ASLv2) The Netty Project +The following NOTICE information applies: + Copyright 2014 The Netty Project + --- + This product contains the extensions to Java Collections Framework which has + been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene: + + * LICENSE: + * license/LICENSE.jsr166y.txt (Public Domain) + * HOMEPAGE: + * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/ + * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/ + + This product contains a modified version of Robert Harder's Public Domain + Base64 Encoder and Decoder, which can be obtained at: + + * LICENSE: + * license/LICENSE.base64.txt (Public Domain) + * HOMEPAGE: + * http://iharder.sourceforge.net/current/java/base64/ + + This product contains a modified portion of 'Webbit', an event based + WebSocket and HTTP server, which can be obtained at: + + * LICENSE: + * license/LICENSE.webbit.txt (BSD License) + * HOMEPAGE: + * https://github.com/joewalnes/webbit + + This product contains a modified portion of 'SLF4J', a simple logging + facade for Java, which can be obtained at: + + * LICENSE: + * license/LICENSE.slf4j.txt (MIT License) + * HOMEPAGE: + * http://www.slf4j.org/ + + This product contains a modified portion of 'Apache Harmony', an open source + Java SE, which can be obtained at: + + * LICENSE: + * license/LICENSE.harmony.txt (Apache License 2.0) + * HOMEPAGE: + * http://archive.apache.org/dist/harmony/ + + This product contains a modified portion of 'jbzip2', a Java bzip2 compression + and decompression library written by Matthew J. Francis. It can be obtained at: + + * LICENSE: + * license/LICENSE.jbzip2.txt (MIT License) + * HOMEPAGE: + * https://code.google.com/p/jbzip2/ + + This product contains a modified portion of 'libdivsufsort', a C API library to construct + the suffix array and the Burrows-Wheeler transformed string for any input string of + a constant-size alphabet written by Yuta Mori. It can be obtained at: + + * LICENSE: + * license/LICENSE.libdivsufsort.txt (MIT License) + * HOMEPAGE: + * https://github.com/y-256/libdivsufsort + + This product contains a modified portion of Nitsan Wakart's 'JCTools', Java Concurrency Tools for the JVM, +which can be obtained at: + + * LICENSE: + * license/LICENSE.jctools.txt (ASL2 License) + * HOMEPAGE: + * https://github.com/JCTools/JCTools + + This product optionally depends on 'JZlib', a re-implementation of zlib in + pure Java, which can be obtained at: + + * LICENSE: + * license/LICENSE.jzlib.txt (BSD style License) + * HOMEPAGE: + * http://www.jcraft.com/jzlib/ + + This product optionally depends on 'Compress-LZF', a Java library for encoding and + decoding data in LZF format, written by Tatu Saloranta. It can be obtained at: + + * LICENSE: + * license/LICENSE.compress-lzf.txt (Apache License 2.0) + * HOMEPAGE: + * https://github.com/ning/compress + + This product optionally depends on 'lz4', a LZ4 Java com
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717027#comment-16717027 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240587144 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-api-nar/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,226 @@ +nifi-cassandra-services-api-nar +Copyright 2016 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +** +Apache Software License v2 +** + + (ASLv2) The Netty Project +The following NOTICE information applies: + Copyright 2014 The Netty Project + --- + This product contains the extensions to Java Collections Framework which has + been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene: + + * LICENSE: + * license/LICENSE.jsr166y.txt (Public Domain) + * HOMEPAGE: + * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/ + * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/ + + This product contains a modified version of Robert Harder's Public Domain + Base64 Encoder and Decoder, which can be obtained at: + + * LICENSE: + * license/LICENSE.base64.txt (Public Domain) + * HOMEPAGE: + * http://iharder.sourceforge.net/current/java/base64/ + + This product contains a modified portion of 'Webbit', an event based + WebSocket and HTTP server, which can be obtained at: + + * LICENSE: + * license/LICENSE.webbit.txt (BSD License) + * HOMEPAGE: + * https://github.com/joewalnes/webbit + + This product contains a modified portion of 'SLF4J', a simple logging + facade for Java, which can be obtained at: + + * LICENSE: + * license/LICENSE.slf4j.txt (MIT License) + * HOMEPAGE: + * http://www.slf4j.org/ + + This product contains a modified portion of 'Apache Harmony', an open source + Java SE, which can be obtained at: + + * LICENSE: + * license/LICENSE.harmony.txt (Apache License 2.0) + * HOMEPAGE: + * http://archive.apache.org/dist/harmony/ + + This product contains a modified portion of 'jbzip2', a Java bzip2 compression + and decompression library written by Matthew J. Francis. It can be obtained at: + + * LICENSE: + * license/LICENSE.jbzip2.txt (MIT License) + * HOMEPAGE: + * https://code.google.com/p/jbzip2/ + + This product contains a modified portion of 'libdivsufsort', a C API library to construct + the suffix array and the Burrows-Wheeler transformed string for any input string of + a constant-size alphabet written by Yuta Mori. It can be obtained at: + + * LICENSE: + * license/LICENSE.libdivsufsort.txt (MIT License) + * HOMEPAGE: + * https://github.com/y-256/libdivsufsort + + This product contains a modified portion of Nitsan Wakart's 'JCTools', Java Concurrency Tools for the JVM, +which can be obtained at: + + * LICENSE: + * license/LICENSE.jctools.txt (ASL2 License) + * HOMEPAGE: + * https://github.com/JCTools/JCTools + + This product optionally depends on 'JZlib', a re-implementation of zlib in + pure Java, which can be obtained at: + + * LICENSE: + * license/LICENSE.jzlib.txt (BSD style License) + * HOMEPAGE: + * http://www.jcraft.com/jzlib/ + + This product optionally depends on 'Compress-LZF', a Java library for encoding and + decoding data in LZF format, written by Tatu Saloranta. It can be obtained at: + + * LICENSE: + * license/LICENSE.compress-lzf.txt (Apache License 2.0) + * HOMEPAGE: + * https://github.com/ning/compress + + This product optionally depends on 'lz4', a LZ4 Java com
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717025#comment-16717025 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240584516 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-api-nar/src/main/resources/META-INF/LICENSE --- @@ -0,0 +1,266 @@ + --- End diff -- +1 LGTM > Create a Connection Pooling service implementation to be used in Cassandra > processors > - > > Key: NIFI-5621 > URL: https://issues.apache.org/jira/browse/NIFI-5621 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Sivaprasanna Sethuraman >Assignee: Sivaprasanna Sethuraman >Priority: Major > > Like how the Relational Database processors leverage 'DBCPConnectionPool' > controller service, there should be one that could be used by the processors > from Cassandra bundle. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5621) Create a Connection Pooling service implementation to be used in Cassandra processors
[ https://issues.apache.org/jira/browse/NIFI-5621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717026#comment-16717026 ] ASF GitHub Bot commented on NIFI-5621: -- Github user MikeThomsen commented on a diff in the pull request: https://github.com/apache/nifi/pull/3105#discussion_r240587016 --- Diff: nifi-nar-bundles/nifi-cassandra-bundle/nifi-cassandra-services-api-nar/src/main/resources/META-INF/NOTICE --- @@ -0,0 +1,226 @@ +nifi-cassandra-services-api-nar +Copyright 2016 The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +** +Apache Software License v2 +** + + (ASLv2) The Netty Project +The following NOTICE information applies: + Copyright 2014 The Netty Project + --- + This product contains the extensions to Java Collections Framework which has + been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene: + + * LICENSE: + * license/LICENSE.jsr166y.txt (Public Domain) + * HOMEPAGE: + * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/ + * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/ + + This product contains a modified version of Robert Harder's Public Domain + Base64 Encoder and Decoder, which can be obtained at: + + * LICENSE: + * license/LICENSE.base64.txt (Public Domain) + * HOMEPAGE: + * http://iharder.sourceforge.net/current/java/base64/ + + This product contains a modified portion of 'Webbit', an event based + WebSocket and HTTP server, which can be obtained at: + + * LICENSE: + * license/LICENSE.webbit.txt (BSD License) + * HOMEPAGE: + * https://github.com/joewalnes/webbit + + This product contains a modified portion of 'SLF4J', a simple logging + facade for Java, which can be obtained at: + + * LICENSE: + * license/LICENSE.slf4j.txt (MIT License) + * HOMEPAGE: + * http://www.slf4j.org/ + + This product contains a modified portion of 'Apache Harmony', an open source + Java SE, which can be obtained at: + + * LICENSE: + * license/LICENSE.harmony.txt (Apache License 2.0) + * HOMEPAGE: + * http://archive.apache.org/dist/harmony/ + + This product contains a modified portion of 'jbzip2', a Java bzip2 compression + and decompression library written by Matthew J. Francis. It can be obtained at: + + * LICENSE: + * license/LICENSE.jbzip2.txt (MIT License) + * HOMEPAGE: + * https://code.google.com/p/jbzip2/ + + This product contains a modified portion of 'libdivsufsort', a C API library to construct + the suffix array and the Burrows-Wheeler transformed string for any input string of + a constant-size alphabet written by Yuta Mori. It can be obtained at: + + * LICENSE: + * license/LICENSE.libdivsufsort.txt (MIT License) + * HOMEPAGE: + * https://github.com/y-256/libdivsufsort + + This product contains a modified portion of Nitsan Wakart's 'JCTools', Java Concurrency Tools for the JVM, +which can be obtained at: + + * LICENSE: + * license/LICENSE.jctools.txt (ASL2 License) + * HOMEPAGE: + * https://github.com/JCTools/JCTools + + This product optionally depends on 'JZlib', a re-implementation of zlib in + pure Java, which can be obtained at: + + * LICENSE: + * license/LICENSE.jzlib.txt (BSD style License) + * HOMEPAGE: + * http://www.jcraft.com/jzlib/ + + This product optionally depends on 'Compress-LZF', a Java library for encoding and + decoding data in LZF format, written by Tatu Saloranta. It can be obtained at: + + * LICENSE: + * license/LICENSE.compress-lzf.txt (Apache License 2.0) + * HOMEPAGE: + * https://github.com/ning/compress + + This product optionally depends on 'lz4', a LZ4 Java com
[jira] [Commented] (NIFI-5886) Add RPM profile for NiFi Toolkit
[ https://issues.apache.org/jira/browse/NIFI-5886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16716185#comment-16716185 ] ASF GitHub Bot commented on NIFI-5886: -- GitHub user yoshiata opened a pull request: https://github.com/apache/nifi/pull/3213 NIFI-5886: Add RPM profile for NiFi Toolkit Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/yoshiata/nifi NIFI-5886 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3213.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3213 commit bcc2898e67570bfb96a46695b987d3676f996031 Author: Yoshiaki Takahashi Date: 2018-12-11T01:24:10Z NIFI-5886: Add RPM profile for NiFi Toolkit > Add RPM profile for NiFi Toolkit > > > Key: NIFI-5886 > URL: https://issues.apache.org/jira/browse/NIFI-5886 > Project: Apache NiFi > Issue Type: Improvement > Components: Tools and Build >Reporter: Yoshiaki Takahashi >Assignee: Yoshiaki Takahashi >Priority: Major > > RPM for NiFi Toolkit is useful for easy installation. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5875) PriorityAttributePrioritizer documentation is not clear.
[ https://issues.apache.org/jira/browse/NIFI-5875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715951#comment-16715951 ] ASF GitHub Bot commented on NIFI-5875: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3205 > PriorityAttributePrioritizer documentation is not clear. > > > Key: NIFI-5875 > URL: https://issues.apache.org/jira/browse/NIFI-5875 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website >Reporter: Wil Selwood >Assignee: Wil Selwood >Priority: Major > > The documentation for the PriorityAttributePrioritizer is not particularly > clear. The First part says highest goes first but then the example at the end > says that 1 would go before 9. This could be clearer. > I've just had to go look up the code to figure out what it was doing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5875) PriorityAttributePrioritizer documentation is not clear.
[ https://issues.apache.org/jira/browse/NIFI-5875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715944#comment-16715944 ] ASF GitHub Bot commented on NIFI-5875: -- Github user ijokarumawak commented on the issue: https://github.com/apache/nifi/pull/3205 Looks perfect, +1 merging. Thanks @wselwood ! > PriorityAttributePrioritizer documentation is not clear. > > > Key: NIFI-5875 > URL: https://issues.apache.org/jira/browse/NIFI-5875 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website >Reporter: Wil Selwood >Priority: Major > > The documentation for the PriorityAttributePrioritizer is not particularly > clear. The First part says highest goes first but then the example at the end > says that 1 would go before 9. This could be clearer. > I've just had to go look up the code to figure out what it was doing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5859) Update NAR maven plugin to include information about Extensions
[ https://issues.apache.org/jira/browse/NIFI-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715538#comment-16715538 ] ASF GitHub Bot commented on NIFI-5859: -- Github user bbende commented on a diff in the pull request: https://github.com/apache/nifi-maven/pull/7#discussion_r240314647 --- Diff: src/main/java/org/apache/nifi/XmlDefinitionWriter.java --- @@ -0,0 +1,165 @@ +/* + * 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; + +import org.apache.nifi.extension.definition.ExtensionDefinition; +import org.apache.nifi.extension.definition.ExtensionType; +import org.apache.nifi.extension.definition.Restriction; +import org.apache.nifi.extension.definition.Restrictions; +import org.apache.nifi.extension.definition.ServiceAPIDefinition; + +import javax.xml.stream.XMLOutputFactory; +import javax.xml.stream.XMLStreamException; +import javax.xml.stream.XMLStreamWriter; +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.OutputStream; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.stream.Collectors; + +public class XmlDefinitionWriter { --- End diff -- Can this be removed now that we are using the classes from nifi-api? > Update NAR maven plugin to include information about Extensions > --- > > Key: NIFI-5859 > URL: https://issues.apache.org/jira/browse/NIFI-5859 > Project: Apache NiFi > Issue Type: New Feature > Components: Tools and Build >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > > In order to have the NiFi Registry host any extensions, the registry will > need a way to know what extensions exist in a given NAR. Currently, that > information is not available directly. > The NAR maven plugin should be updated to provide a list of extensions and > for each one, provide at least the following minimal information: > * Extension Type > * Extension Name > * Capability Description > * Whether or not the component is Restricted, "sub-restrictions" it has, and > explanations of both > * Any Tags that the component has > * If the component is a Controller Service, any Controller Service API's > that it provides > Additionally, it would be ideal to provide all documentation for the > component within the NAR. It is best, though, not to write the documentation > in HTML as is done now but rather in XML or some sort of form that provides > the information in a structured way without any styling. This would allow the > documentation to be rendered consistently, even if the styling changes from 1 > version to the next. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5859) Update NAR maven plugin to include information about Extensions
[ https://issues.apache.org/jira/browse/NIFI-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715535#comment-16715535 ] ASF GitHub Bot commented on NIFI-5859: -- Github user bbende commented on a diff in the pull request: https://github.com/apache/nifi-maven/pull/7#discussion_r240308506 --- Diff: src/main/java/org/apache/nifi/NarMojo.java --- @@ -426,12 +479,260 @@ protected boolean cloneDuringInstanceClassLoading; +/** + * The {@link RepositorySystemSession} used for obtaining the local and remote artifact repositories. + */ +@Parameter(defaultValue = "${repositorySystemSession}", readonly = true) +private RepositorySystemSession repoSession; + + +/** + * The {@link ProjectBuilder} used to generate the {@link MavenProject} for the nar artifact the dependency tree is being generated for. + */ +@Component +private ProjectBuilder projectBuilder; + + + @Override -public void execute() throws MojoExecutionException, MojoFailureException { +public void execute() throws MojoExecutionException { copyDependencies(); + +try { +generateDocumentation(); --- End diff -- Could we add an optional property like "enforceDocGeneration" (or some better name) that when true we would let the exception be thrown here to fail the build? The use-case would be to know that when doing a release we have successfully generated the docs if the build passed. Right now it can silently fail with a warning and you'd have to manually inspect every NAR to really know. > Update NAR maven plugin to include information about Extensions > --- > > Key: NIFI-5859 > URL: https://issues.apache.org/jira/browse/NIFI-5859 > Project: Apache NiFi > Issue Type: New Feature > Components: Tools and Build >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > > In order to have the NiFi Registry host any extensions, the registry will > need a way to know what extensions exist in a given NAR. Currently, that > information is not available directly. > The NAR maven plugin should be updated to provide a list of extensions and > for each one, provide at least the following minimal information: > * Extension Type > * Extension Name > * Capability Description > * Whether or not the component is Restricted, "sub-restrictions" it has, and > explanations of both > * Any Tags that the component has > * If the component is a Controller Service, any Controller Service API's > that it provides > Additionally, it would be ideal to provide all documentation for the > component within the NAR. It is best, though, not to write the documentation > in HTML as is done now but rather in XML or some sort of form that provides > the information in a structured way without any styling. This would allow the > documentation to be rendered consistently, even if the styling changes from 1 > version to the next. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5859) Update NAR maven plugin to include information about Extensions
[ https://issues.apache.org/jira/browse/NIFI-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715540#comment-16715540 ] ASF GitHub Bot commented on NIFI-5859: -- Github user bbende commented on a diff in the pull request: https://github.com/apache/nifi-maven/pull/7#discussion_r240310495 --- Diff: src/main/java/org/apache/nifi/NarMojo.java --- @@ -426,12 +479,260 @@ protected boolean cloneDuringInstanceClassLoading; +/** + * The {@link RepositorySystemSession} used for obtaining the local and remote artifact repositories. + */ +@Parameter(defaultValue = "${repositorySystemSession}", readonly = true) +private RepositorySystemSession repoSession; + + +/** + * The {@link ProjectBuilder} used to generate the {@link MavenProject} for the nar artifact the dependency tree is being generated for. + */ +@Component +private ProjectBuilder projectBuilder; + + + @Override -public void execute() throws MojoExecutionException, MojoFailureException { +public void execute() throws MojoExecutionException { copyDependencies(); + +try { +generateDocumentation(); +} catch (final Throwable t) { // Catch Throwable in case a linkage error such as NoClassDefFoundError occurs +getLog().warn("Could not generate extensions' documentation", t); +} + makeNar(); } +private File getExtensionsDocumentationFile() { +final File directory = new File(projectBuildDirectory, "META-INF/docs"); +return new File(directory, "extension-docs.xml"); +} + +private void generateDocumentation() throws MojoExecutionException { +getLog().info("Generating documentation for NiFi extensions in the NAR..."); + +// Create the ClassLoader for the NAR +final ExtensionClassLoaderFactory classLoaderFactory = createClassLoaderFactory(); + +final ExtensionClassLoader extensionClassLoader; +try { +extensionClassLoader = classLoaderFactory.createExtensionClassLoader(); +} catch (final Exception e) { +if (getLog().isDebugEnabled()) { +getLog().debug("Unable to create a ClassLoader for documenting extensions. If this NAR contains any NiFi Extensions, those extensions will not be documented.", e); +} else { +getLog().warn("Unable to create a ClassLoader for documenting extensions. If this NAR contains any NiFi Extensions, those extensions will not be documented. " + +"Enable mvn DEBUG output for more information (mvn -X)."); +} + +return; +} + + +final File docsFile = getExtensionsDocumentationFile(); +createDirectory(docsFile.getParentFile()); + +final File additionalDetailsDir = new File(docsFile.getParentFile(), "additional-details"); +createDirectory(additionalDetailsDir); + +try (final OutputStream out = new FileOutputStream(docsFile)) { + +final XMLStreamWriter xmlWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(out, "UTF-8"); +try { +xmlWriter.writeStartElement("extensions"); + +final String nifiApiVersion = extensionClassLoader.getNiFiApiVersion(); +xmlWriter.writeStartElement("nifiApiVersion"); +xmlWriter.writeCharacters(nifiApiVersion); +xmlWriter.writeEndElement(); + +final Class docWriterClass; +try { +docWriterClass = Class.forName(DOCUMENTATION_WRITER_CLASS_NAME, false, extensionClassLoader); --- End diff -- Should we do this before entering the try block on line 542 so that if the doc writer class can't be found we won't write anything to the docs file? > Update NAR maven plugin to include information about Extensions > --- > > Key: NIFI-5859 > URL: https://issues.apache.org/jira/browse/NIFI-5859 > Project: Apache NiFi > Issue Type: New Feature > Components: Tools and Build >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > > In order to have the NiFi Registry host any extensions, the registry will > need a way to know what extensions exist in a given NAR. Currently, that > information is not available directly. > The NAR maven plugin should be updated to provide a list of extensions and > for each one, provide
[jira] [Commented] (NIFI-5859) Update NAR maven plugin to include information about Extensions
[ https://issues.apache.org/jira/browse/NIFI-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715537#comment-16715537 ] ASF GitHub Bot commented on NIFI-5859: -- Github user bbende commented on a diff in the pull request: https://github.com/apache/nifi-maven/pull/7#discussion_r240314701 --- Diff: src/main/java/org/apache/nifi/PropertiesDefinitionWriter.java --- @@ -0,0 +1,75 @@ +/* + * 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; + +import org.apache.nifi.extension.definition.ExtensionDefinition; +import org.apache.nifi.extension.definition.Restriction; +import org.apache.nifi.extension.definition.Restrictions; +import org.apache.nifi.extension.definition.ServiceAPIDefinition; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.OutputStream; +import java.util.Objects; +import java.util.Properties; + +public class PropertiesDefinitionWriter { --- End diff -- Can this be removed now that we are using the classes from nifi-api? > Update NAR maven plugin to include information about Extensions > --- > > Key: NIFI-5859 > URL: https://issues.apache.org/jira/browse/NIFI-5859 > Project: Apache NiFi > Issue Type: New Feature > Components: Tools and Build >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > > In order to have the NiFi Registry host any extensions, the registry will > need a way to know what extensions exist in a given NAR. Currently, that > information is not available directly. > The NAR maven plugin should be updated to provide a list of extensions and > for each one, provide at least the following minimal information: > * Extension Type > * Extension Name > * Capability Description > * Whether or not the component is Restricted, "sub-restrictions" it has, and > explanations of both > * Any Tags that the component has > * If the component is a Controller Service, any Controller Service API's > that it provides > Additionally, it would be ideal to provide all documentation for the > component within the NAR. It is best, though, not to write the documentation > in HTML as is done now but rather in XML or some sort of form that provides > the information in a structured way without any styling. This would allow the > documentation to be rendered consistently, even if the styling changes from 1 > version to the next. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5859) Update NAR maven plugin to include information about Extensions
[ https://issues.apache.org/jira/browse/NIFI-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715536#comment-16715536 ] ASF GitHub Bot commented on NIFI-5859: -- Github user bbende commented on a diff in the pull request: https://github.com/apache/nifi-maven/pull/7#discussion_r240374218 --- Diff: src/main/java/org/apache/nifi/extension/definition/extraction/ExtensionDefinitionFactory.java --- @@ -0,0 +1,247 @@ +/* + * 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.extension.definition.extraction; + +import org.apache.maven.artifact.Artifact; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.nifi.extension.definition.ExtensionDefinition; +import org.apache.nifi.extension.definition.ExtensionType; +import org.apache.nifi.extension.definition.Restriction; +import org.apache.nifi.extension.definition.Restrictions; +import org.apache.nifi.extension.definition.ServiceAPIDefinition; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; +import java.lang.annotation.Annotation; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.net.URL; +import java.util.Collections; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +public class ExtensionDefinitionFactory { +private static final String SERVICES_DIRECTORY = "META-INF/services/"; + +private static final Map INTERFACE_NAMES = new HashMap<>(); +static { +INTERFACE_NAMES.put(ExtensionType.PROCESSOR, "org.apache.nifi.processor.Processor"); +INTERFACE_NAMES.put(ExtensionType.CONTROLLER_SERVICE, "org.apache.nifi.controller.ControllerService"); +INTERFACE_NAMES.put(ExtensionType.REPORTING_TASK, "org.apache.nifi.reporting.ReportingTask"); +} + +private final ClassLoader extensionClassLoader; + +public ExtensionDefinitionFactory(final ClassLoader classLoader) { +this.extensionClassLoader = classLoader; +} + +public Set discoverExtensions(final ExtensionType extensionType) throws IOException { +final String interfaceName = INTERFACE_NAMES.get(extensionType); +final Set classNames = discoverClassNames(interfaceName); + +if (classNames.isEmpty()) { +return Collections.emptySet(); +} + +final Set definitions = new HashSet<>(); +for (final String className : classNames) { +try { +definitions.add(createExtensionDefinition(extensionType, className)); +} catch (final Exception e) { +throw new IOException("Failed to create Extension Definition for " + extensionType + " " + className, e); +} +} + +return definitions; +} + +private ExtensionDefinition createExtensionDefinition(final ExtensionType extensionType, final String className) throws ClassNotFoundException, +IllegalAccessException, NoSuchMethodException, InvocationTargetException { + +final Class extensionClass = Class.forName(className, false, extensionClassLoader); + +final String capabilityDescription = getCapabilityDescription(extensionClass); +final Set tags = getTags(extensionClass); +final Restrictions restrictions = getRestrictions(extensionClass); +final Set serviceApis = getProvidedServiceAPIs(extensionType, extensionClass); + +return new StandardExtensionDefinition(extensionType, className, capabilityDescription, tags, restrictions, serviceApis); +} + +p
[jira] [Commented] (NIFI-5859) Update NAR maven plugin to include information about Extensions
[ https://issues.apache.org/jira/browse/NIFI-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715011#comment-16715011 ] ASF GitHub Bot commented on NIFI-5859: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3192 > Update NAR maven plugin to include information about Extensions > --- > > Key: NIFI-5859 > URL: https://issues.apache.org/jira/browse/NIFI-5859 > Project: Apache NiFi > Issue Type: New Feature > Components: Tools and Build >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > > In order to have the NiFi Registry host any extensions, the registry will > need a way to know what extensions exist in a given NAR. Currently, that > information is not available directly. > The NAR maven plugin should be updated to provide a list of extensions and > for each one, provide at least the following minimal information: > * Extension Type > * Extension Name > * Capability Description > * Whether or not the component is Restricted, "sub-restrictions" it has, and > explanations of both > * Any Tags that the component has > * If the component is a Controller Service, any Controller Service API's > that it provides > Additionally, it would be ideal to provide all documentation for the > component within the NAR. It is best, though, not to write the documentation > in HTML as is done now but rather in XML or some sort of form that provides > the information in a structured way without any styling. This would allow the > documentation to be rendered consistently, even if the styling changes from 1 > version to the next. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5859) Update NAR maven plugin to include information about Extensions
[ https://issues.apache.org/jira/browse/NIFI-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16715006#comment-16715006 ] ASF GitHub Bot commented on NIFI-5859: -- Github user bbende commented on the issue: https://github.com/apache/nifi/pull/3192 LGTM, going to merge, thanks! > Update NAR maven plugin to include information about Extensions > --- > > Key: NIFI-5859 > URL: https://issues.apache.org/jira/browse/NIFI-5859 > Project: Apache NiFi > Issue Type: New Feature > Components: Tools and Build >Reporter: Mark Payne >Assignee: Mark Payne >Priority: Major > > In order to have the NiFi Registry host any extensions, the registry will > need a way to know what extensions exist in a given NAR. Currently, that > information is not available directly. > The NAR maven plugin should be updated to provide a list of extensions and > for each one, provide at least the following minimal information: > * Extension Type > * Extension Name > * Capability Description > * Whether or not the component is Restricted, "sub-restrictions" it has, and > explanations of both > * Any Tags that the component has > * If the component is a Controller Service, any Controller Service API's > that it provides > Additionally, it would be ideal to provide all documentation for the > component within the NAR. It is best, though, not to write the documentation > in HTML as is done now but rather in XML or some sort of form that provides > the information in a structured way without any styling. This would allow the > documentation to be rendered consistently, even if the styling changes from 1 > version to the next. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714974#comment-16714974 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi-minifi-cpp/pull/457 > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5629) GetFile becomes slow listing vast directories
[ https://issues.apache.org/jira/browse/NIFI-5629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714601#comment-16714601 ] ASF GitHub Bot commented on NIFI-5629: -- Github user adyoun2 commented on the issue: https://github.com/apache/nifi/pull/3033 Could someone take a look at this? Cheers > GetFile becomes slow listing vast directories > - > > Key: NIFI-5629 > URL: https://issues.apache.org/jira/browse/NIFI-5629 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Affects Versions: 1.6.0 >Reporter: Adam >Priority: Minor > > GetFile repeatedly lists entire directories before applying batching, meaning > for vast directories it spends a long time listing directories. > > Pull request to follow. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5885) EL expression of anyDelineatedValue() and or() fails with stacktrace
[ https://issues.apache.org/jira/browse/NIFI-5885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714554#comment-16714554 ] ASF GitHub Bot commented on NIFI-5885: -- Github user pvillard31 commented on the issue: https://github.com/apache/nifi/pull/3212 +1, merging to master, thanks @ijokarumawak > EL expression of anyDelineatedValue() and or() fails with stacktrace > - > > Key: NIFI-5885 > URL: https://issues.apache.org/jira/browse/NIFI-5885 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.0.0 >Reporter: Yan Chen >Assignee: Koji Kawamura >Priority: Major > Attachments: anyDelineatedValue_or_test.xml, > image-2018-12-10-11-37-55-545.png > > > See attached Template test-case. Following EL expression failed: > ${anyDelineatedValue('${names}', > ','):equals('${my_name}'):or(${anyDelineatedValue('${types}', > ','):equals('${my_type}')})} > with stacktrace: > {code:java} > // code placeholder > 2018-12-09 19:03:25,534 ERROR [Timer-Driven Process Thread-7] > o.a.n.p.standard.RouteOnAttribute > RouteOnAttribute[id=954d4a07-0167-1000--93233dd3] > RouteOnAttribute[id=954d4a07-0167-1000--93233dd3] failed to process > session due to java.lang.ArrayIndexOutOfBoundsException: 1; Processor > Administratively Yielded for 1 sec: java.lang.ArrayIndexOutOfBoundsException: > 1 > java.lang.ArrayIndexOutOfBoundsException: 1 > at > org.apache.nifi.attribute.expression.language.evaluation.selection.DelineatedAttributeEvaluator.evaluate(DelineatedAttributeEvaluator.java:65) > at > org.apache.nifi.attribute.expression.language.evaluation.functions.EqualsEvaluator.evaluate(EqualsEvaluator.java:40) > at > org.apache.nifi.attribute.expression.language.evaluation.selection.AnyAttributeEvaluator.evaluate(AnyAttributeEvaluator.java:38) > at > org.apache.nifi.attribute.expression.language.evaluation.functions.OrEvaluator.evaluate(OrEvaluator.java:47) > at > org.apache.nifi.attribute.expression.language.evaluation.selection.AnyAttributeEvaluator.evaluate(AnyAttributeEvaluator.java:49) > at > org.apache.nifi.attribute.expression.language.Query.evaluate(Query.java:363) > at > org.apache.nifi.attribute.expression.language.Query.evaluateExpression(Query.java:204) > at > org.apache.nifi.attribute.expression.language.CompiledExpression.evaluate(CompiledExpression.java:58) > at > org.apache.nifi.attribute.expression.language.StandardPreparedQuery.evaluateExpressions(StandardPreparedQuery.java:53) > at > org.apache.nifi.attribute.expression.language.StandardPropertyValue.evaluateAttributeExpressions(StandardPropertyValue.java:160) > at > org.apache.nifi.attribute.expression.language.StandardPropertyValue.evaluateAttributeExpressions(StandardPropertyValue.java:148) > at > org.apache.nifi.attribute.expression.language.StandardPropertyValue.evaluateAttributeExpressions(StandardPropertyValue.java:133) > at > org.apache.nifi.processors.standard.RouteOnAttribute.onTrigger(RouteOnAttribute.java:219) > at > org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) > at > org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1165) > at > org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:203) > at > org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:117) > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5885) EL expression of anyDelineatedValue() and or() fails with stacktrace
[ https://issues.apache.org/jira/browse/NIFI-5885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714562#comment-16714562 ] ASF GitHub Bot commented on NIFI-5885: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3212 > EL expression of anyDelineatedValue() and or() fails with stacktrace > - > > Key: NIFI-5885 > URL: https://issues.apache.org/jira/browse/NIFI-5885 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.0.0 >Reporter: Yan Chen >Assignee: Koji Kawamura >Priority: Major > Fix For: 1.9.0 > > Attachments: anyDelineatedValue_or_test.xml, > image-2018-12-10-11-37-55-545.png > > > See attached Template test-case. Following EL expression failed: > ${anyDelineatedValue('${names}', > ','):equals('${my_name}'):or(${anyDelineatedValue('${types}', > ','):equals('${my_type}')})} > with stacktrace: > {code:java} > // code placeholder > 2018-12-09 19:03:25,534 ERROR [Timer-Driven Process Thread-7] > o.a.n.p.standard.RouteOnAttribute > RouteOnAttribute[id=954d4a07-0167-1000--93233dd3] > RouteOnAttribute[id=954d4a07-0167-1000--93233dd3] failed to process > session due to java.lang.ArrayIndexOutOfBoundsException: 1; Processor > Administratively Yielded for 1 sec: java.lang.ArrayIndexOutOfBoundsException: > 1 > java.lang.ArrayIndexOutOfBoundsException: 1 > at > org.apache.nifi.attribute.expression.language.evaluation.selection.DelineatedAttributeEvaluator.evaluate(DelineatedAttributeEvaluator.java:65) > at > org.apache.nifi.attribute.expression.language.evaluation.functions.EqualsEvaluator.evaluate(EqualsEvaluator.java:40) > at > org.apache.nifi.attribute.expression.language.evaluation.selection.AnyAttributeEvaluator.evaluate(AnyAttributeEvaluator.java:38) > at > org.apache.nifi.attribute.expression.language.evaluation.functions.OrEvaluator.evaluate(OrEvaluator.java:47) > at > org.apache.nifi.attribute.expression.language.evaluation.selection.AnyAttributeEvaluator.evaluate(AnyAttributeEvaluator.java:49) > at > org.apache.nifi.attribute.expression.language.Query.evaluate(Query.java:363) > at > org.apache.nifi.attribute.expression.language.Query.evaluateExpression(Query.java:204) > at > org.apache.nifi.attribute.expression.language.CompiledExpression.evaluate(CompiledExpression.java:58) > at > org.apache.nifi.attribute.expression.language.StandardPreparedQuery.evaluateExpressions(StandardPreparedQuery.java:53) > at > org.apache.nifi.attribute.expression.language.StandardPropertyValue.evaluateAttributeExpressions(StandardPropertyValue.java:160) > at > org.apache.nifi.attribute.expression.language.StandardPropertyValue.evaluateAttributeExpressions(StandardPropertyValue.java:148) > at > org.apache.nifi.attribute.expression.language.StandardPropertyValue.evaluateAttributeExpressions(StandardPropertyValue.java:133) > at > org.apache.nifi.processors.standard.RouteOnAttribute.onTrigger(RouteOnAttribute.java:219) > at > org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) > at > org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1165) > at > org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:203) > at > org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:117) > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5872) Add compression option on JsonRecordSetWriter
[ https://issues.apache.org/jira/browse/NIFI-5872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714374#comment-16714374 ] ASF GitHub Bot commented on NIFI-5872: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3208 > Add compression option on JsonRecordSetWriter > - > > Key: NIFI-5872 > URL: https://issues.apache.org/jira/browse/NIFI-5872 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > Fix For: 1.9.0 > > > Add a compression option on the JsonRecordSetWriter controller service as we > have on the AvroRecordSetWriter controller service. This can be useful in > case of very IO intensive workflows. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5872) Add compression option on JsonRecordSetWriter
[ https://issues.apache.org/jira/browse/NIFI-5872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714372#comment-16714372 ] ASF GitHub Bot commented on NIFI-5872: -- Github user ijokarumawak commented on the issue: https://github.com/apache/nifi/pull/3208 The performance improvement result is impressing! Code looks good and I was able to compress records. +1 merging. Thanks @pvillard31 > Add compression option on JsonRecordSetWriter > - > > Key: NIFI-5872 > URL: https://issues.apache.org/jira/browse/NIFI-5872 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > > Add a compression option on the JsonRecordSetWriter controller service as we > have on the AvroRecordSetWriter controller service. This can be useful in > case of very IO intensive workflows. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5875) PriorityAttributePrioritizer documentation is not clear.
[ https://issues.apache.org/jira/browse/NIFI-5875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714344#comment-16714344 ] ASF GitHub Bot commented on NIFI-5875: -- Github user ijokarumawak commented on the issue: https://github.com/apache/nifi/pull/3205 @wselwood Thanks for the update, looks much better! For the even better readability, can we improve structure a little bit more organized? How about something like this? Example output: ![image](https://user-images.githubusercontent.com/1107620/49714327-caef3f80-fc8f-11e8-9a6d-349511685aad.png) --- (As plain text) PriorityAttributePrioritizer: Given two FlowFiles that both have a "priority" attribute, the one that has the highest priority value will be processed first. - Note that an UpdateAttribute processor should be used to add the "priority" attribute to the FlowFiles before they reach a connection that has this prioritizer set. - If only one has that attribute it will go first. - Values for the "priority" attribute may be alphanumeric, where "a" is a higher priority than "z", and "1" is a higher priority than "9", for example. - If "priority" attribute cannot be parsed as a long, unicode string ordering will be used. For example: "99" and "100" will be ordered so the flowfile with "99" comes first, but "A-99" and "A-100" will sort so the flowfile with "A-100" comes first. > PriorityAttributePrioritizer documentation is not clear. > > > Key: NIFI-5875 > URL: https://issues.apache.org/jira/browse/NIFI-5875 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website >Reporter: Wil Selwood >Priority: Major > > The documentation for the PriorityAttributePrioritizer is not particularly > clear. The First part says highest goes first but then the example at the end > says that 1 would go before 9. This could be clearer. > I've just had to go look up the code to figure out what it was doing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5885) EL expression of anyDelineatedValue() and or() fails with stacktrace
[ https://issues.apache.org/jira/browse/NIFI-5885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714319#comment-16714319 ] ASF GitHub Bot commented on NIFI-5885: -- GitHub user ijokarumawak opened a pull request: https://github.com/apache/nifi/pull/3212 NIFI-5885 ArrayOutOfBoundsException at EL 'or' and 'and' functions EL 'or' and 'and' functions can be called multiple times within the same context using the same evaluator instance. That happens if their subject is derived from an IteratingEvaluator such as 'anyDelineatedValues'. And if the right hand side expression for such 'or' and 'and' contains another IteratingEvaluator, then it can be evaluated more than the number of its candidates, ultimately an ArrayOutOfBoundsException is thrown. This commit makes Or/AndEvaluator caching its right hand side result to prevent that happens. For 'or' and 'and' functions, the right hand side expression is independant from their subject boolean value. It's enough evaluating right hand side once, because it returns the same result even with different subjects. Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [x] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] Has your PR been rebased against the latest commit within the target branch (typically master)? - [x] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [x] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/ijokarumawak/nifi nifi-5885 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3212.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3212 commit 44988792b47472a491673cd642b0e8557c274649 Author: Koji Kawamura Date: 2018-12-10T05:31:16Z NIFI-5885 ArrayOutOfBoundsException at EL 'or' and 'and' functions EL 'or' and 'and' functions can be called multiple times within the same context using the same evaluator instance. That happens if their subject is derived from an IteratingEvaluator such as 'anyDelineatedValues'. And if the right hand side expression for such 'or' and 'and' contains another IteratingEvaluator, then it can be evaluated more than the number of its candidates, ultimately an ArrayOutOfBoundsException is thrown. This commit makes Or/AndEvaluator caching its right hand side result to prevent that happens. For 'or' and 'and' functions, the right hand side expression is independant from their subject boolean value. It's enough evaluating right hand side once, because it returns the same result even with different subjects. > EL expression of anyDelineatedValue() and or() fails with stacktrace > - > > Key: NIFI-5885 > URL: https://issues.apache.org/jira/browse/NIFI-5885 > Project: Apache NiFi > Issue Type: Bug >Affects Versions: 1.8.0 >Reporter: Yan Chen >Assignee: Koji Kawamura >Priority: Major > Attachments: anyDelineatedValue_or_test.xml, > image-2018-12-10-11-37-55-545.png > > > See attached Template test-case. Following EL expression failed: > ${anyDeline
[jira] [Commented] (NIFI-5884) Use latest 1.1.x HBase client
[ https://issues.apache.org/jira/browse/NIFI-5884?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714214#comment-16714214 ] ASF GitHub Bot commented on NIFI-5884: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3211 > Use latest 1.1.x HBase client > - > > Key: NIFI-5884 > URL: https://issues.apache.org/jira/browse/NIFI-5884 > Project: Apache NiFi > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > Fix For: 1.9.0 > > > I've seen a scenario where the HBase_1_1_2_ClientService got stuck in the > disabling state and was never going to complete due to the close() method of > the client being stuck in this while loop: > https://github.com/apache/hbase/blob/rel/1.1.2/hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/RpcClientImpl.java#L1168 > It appears this was a know issue and resolved in HBase client 1.1.6, and I > believe the latest is now 1.1.13: > https://issues.apache.org/jira/browse/HBASE-15957 > Previously I was against changing from 1.1.2 since the controller service has > the version in the name, but after seeing actual bugs impacting the service, > I am now in favor of changing to the latest 1.1.x version, knowing that we > still need to eventually implement a 2.x version of the service. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5884) Use latest 1.1.x HBase client
[ https://issues.apache.org/jira/browse/NIFI-5884?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714212#comment-16714212 ] ASF GitHub Bot commented on NIFI-5884: -- Github user ijokarumawak commented on the issue: https://github.com/apache/nifi/pull/3211 I agree with the idea of using 1.1.x HBase client despite of having 1.1.2 in the component name. +1 merging. Thanks @bbende ! > Use latest 1.1.x HBase client > - > > Key: NIFI-5884 > URL: https://issues.apache.org/jira/browse/NIFI-5884 > Project: Apache NiFi > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > > I've seen a scenario where the HBase_1_1_2_ClientService got stuck in the > disabling state and was never going to complete due to the close() method of > the client being stuck in this while loop: > https://github.com/apache/hbase/blob/rel/1.1.2/hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/RpcClientImpl.java#L1168 > It appears this was a know issue and resolved in HBase client 1.1.6, and I > believe the latest is now 1.1.13: > https://issues.apache.org/jira/browse/HBASE-15957 > Previously I was against changing from 1.1.2 since the controller service has > the version in the name, but after seeing actual bugs impacting the service, > I am now in favor of changing to the latest 1.1.x version, knowing that we > still need to eventually implement a 2.x version of the service. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5881) Support the non-ascii name of template when export
[ https://issues.apache.org/jira/browse/NIFI-5881?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714193#comment-16714193 ] ASF GitHub Bot commented on NIFI-5881: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3210 > Support the non-ascii name of template when export > -- > > Key: NIFI-5881 > URL: https://issues.apache.org/jira/browse/NIFI-5881 > Project: Apache NiFi > Issue Type: Bug >Reporter: Kemix Koo >Assignee: Kemix Koo >Priority: Minor > > Currently, can set the name of template for non-ascii, like Chinese. > But when export the template, the filename of template is wrong. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5881) Support the non-ascii name of template when export
[ https://issues.apache.org/jira/browse/NIFI-5881?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16714190#comment-16714190 ] ASF GitHub Bot commented on NIFI-5881: -- Github user ijokarumawak commented on the issue: https://github.com/apache/nifi/pull/3210 Thanks @kemixkoo for your contribution! I confirmed that Japanese characters can be used in template file name with this fix. +1 merging! > Support the non-ascii name of template when export > -- > > Key: NIFI-5881 > URL: https://issues.apache.org/jira/browse/NIFI-5881 > Project: Apache NiFi > Issue Type: Bug >Reporter: Kemix Koo >Assignee: Kemix Koo >Priority: Minor > > Currently, can set the name of template for non-ascii, like Chinese. > But when export the template, the filename of template is wrong. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5884) Use latest 1.1.x HBase client
[ https://issues.apache.org/jira/browse/NIFI-5884?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16713019#comment-16713019 ] ASF GitHub Bot commented on NIFI-5884: -- GitHub user bbende opened a pull request: https://github.com/apache/nifi/pull/3211 NIFI-5884 Bumping hbase-client version from 1.1.2 to 1.1.13 Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/bbende/nifi NIFI-5884 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3211.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3211 commit 86d86f7fcd3e27e4dde102751dec47d4c2159684 Author: Bryan Bende Date: 2018-12-07T15:50:43Z NIFI-5884 Bumping hbase-client version from 1.1.2 to 1.1.13 > Use latest 1.1.x HBase client > - > > Key: NIFI-5884 > URL: https://issues.apache.org/jira/browse/NIFI-5884 > Project: Apache NiFi > Issue Type: Improvement >Reporter: Bryan Bende >Assignee: Bryan Bende >Priority: Minor > > I've seen a scenario where the HBase_1_1_2_ClientService got stuck in the > disabling state and was never going to complete due to the close() method of > the client being stuck in this while loop: > https://github.com/apache/hbase/blob/rel/1.1.2/hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/RpcClientImpl.java#L1168 > It appears this was a know issue and resolved in HBase client 1.1.6, and I > believe the latest is now 1.1.13: > https://issues.apache.org/jira/browse/HBASE-15957 > Previously I was against changing from 1.1.2 since the controller service has > the version in the name, but after seeing actual bugs impacting the service, > I am now in favor of changing to the latest 1.1.x version, knowing that we > still need to eventually implement a 2.x version of the service. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712904#comment-16712904 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239819770 --- Diff: extensions/mqtt/processors/PublishMQTT.h --- @@ -137,7 +137,7 @@ class PublishMQTT : public processors::AbstractMQTTProcessor { std::shared_ptr logger_; }; -REGISTER_RESOURCE(PublishMQTT); +REGISTER_RESOURCE(PublishMQTT, "This Processor puts the contents of a FlowFile to a MQTT broker for a specified topic. The content of a FlowFile becomes the payload of the MQTT message."); --- End diff -- Hmm that's a good point. I'll see if I can clarify this, then. > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712889#comment-16712889 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239815707 --- Diff: libminifi/include/processors/GetFile.h --- @@ -194,7 +194,7 @@ class GetFile : public core::Processor, public state::response::MetricsNodeSourc std::shared_ptr logger_; }; -REGISTER_RESOURCE(GetFile); +REGISTER_RESOURCE(GetFile,"Creates FlowFiles from files in a directory. NiFi will ignore files for which it doesn't have read permissions."); --- End diff -- ha actually this one I modified as it ended in a prepositional phrase but I didn't notice the NiFi. Thanks! > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712891#comment-16712891 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239815939 --- Diff: extensions/mqtt/processors/PublishMQTT.h --- @@ -137,7 +137,7 @@ class PublishMQTT : public processors::AbstractMQTTProcessor { std::shared_ptr logger_; }; -REGISTER_RESOURCE(PublishMQTT); +REGISTER_RESOURCE(PublishMQTT, "This Processor puts the contents of a FlowFile to a MQTT broker for a specified topic. The content of a FlowFile becomes the payload of the MQTT message."); --- End diff -- Naturally I'm not a native speaker, the reason I asked is having both plural and singular usage of content when it's about a single flow file. > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712887#comment-16712887 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239815379 --- Diff: extensions/mqtt/processors/PublishMQTT.h --- @@ -137,7 +137,7 @@ class PublishMQTT : public processors::AbstractMQTTProcessor { std::shared_ptr logger_; }; -REGISTER_RESOURCE(PublishMQTT); +REGISTER_RESOURCE(PublishMQTT, "This Processor puts the contents of a FlowFile to a MQTT broker for a specified topic. The content of a FlowFile becomes the payload of the MQTT message."); --- End diff -- In plural form contents can referenced in a concrete sense to things contained within something. This isn't incorrect. I'll err on avoiding to change the original author's wording. > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712885#comment-16712885 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239814559 --- Diff: extensions/libarchive/MergeContent.h --- @@ -334,7 +334,9 @@ class MergeContent : public processors::BinFiles { std::string readContent(std::string path); }; -REGISTER_RESOURCE(MergeContent); +REGISTER_RESOURCE(MergeContent, "Merges a Group of FlowFiles together based on a user-defined strategy and packages them into a single FlowFile. " +"It is recommended that the Processor be configured with only a single incoming connection, as Group of FlowFiles will not be created from " --- End diff -- "Processor is configured" would be passive voice, so not the best choice if we are to nit. > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712780#comment-16712780 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239792102 --- Diff: libminifi/include/processors/GetFile.h --- @@ -194,7 +194,7 @@ class GetFile : public core::Processor, public state::response::MetricsNodeSourc std::shared_ptr logger_; }; -REGISTER_RESOURCE(GetFile); +REGISTER_RESOURCE(GetFile,"Creates FlowFiles from files in a directory. NiFi will ignore files for which it doesn't have read permissions."); --- End diff -- Yah. These are auto copied from processors.md, so these typos exist there too. Thank for catching. > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712784#comment-16712784 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user phrocker commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239792561 --- Diff: extensions/mqtt/processors/AbstractMQTTProcessor.h --- @@ -157,7 +157,6 @@ class AbstractMQTTProcessor : public core::Processor { std::string securityPrivateKeyPassWord_; }; -REGISTER_RESOURCE(AbstractMQTTProcessor); --- End diff -- The appropriate thing would be to remove this class, actually. I'll try to put the details in a ticket, but the priority is low since it's an extension > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-693) getProperty should rely on user provided allocated buffers.
[ https://issues.apache.org/jira/browse/MINIFICPP-693?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712776#comment-16712776 ] ASF GitHub Bot commented on MINIFICPP-693: -- GitHub user arpadboda opened a pull request: https://github.com/apache/nifi-minifi-cpp/pull/458 MINIFICPP-693 - getProperty should rely on user provided allocated bu… …ffers. Thank you for submitting a contribution to Apache NiFi - MiNiFi C++. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with MINIFICPP- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file? - [ ] If applicable, have you updated the NOTICE file? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/arpadboda/nifi-minifi-cpp MINIFICPP-693 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi-minifi-cpp/pull/458.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #458 commit 3d8f60d44e92cf5d384a8c6b24fc2a12e42ebbc4 Author: Arpad Boda Date: 2018-12-07T12:30:10Z MINIFICPP-693 - getProperty should rely on user provided allocated buffers. > getProperty should rely on user provided allocated buffers. > > > Key: MINIFICPP-693 > URL: https://issues.apache.org/jira/browse/MINIFICPP-693 > Project: NiFi MiNiFi C++ > Issue Type: Improvement >Reporter: Mr TheSegfault >Assignee: Arpad Boda >Priority: Major > Labels: nanofi > > Assuming this is a provision from the current release we should be able to > change this to getproperty(XXX,user pntr, user provided size) and leave > allocation up to the consumer. This will likely be more C prototypical and > congruent with where the API is headed. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712727#comment-16712727 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239780670 --- Diff: libminifi/include/processors/GetFile.h --- @@ -194,7 +194,7 @@ class GetFile : public core::Processor, public state::response::MetricsNodeSourc std::shared_ptr logger_; }; -REGISTER_RESOURCE(GetFile); +REGISTER_RESOURCE(GetFile,"Creates FlowFiles from files in a directory. NiFi will ignore files for which it doesn't have read permissions."); --- End diff -- MiNiFi? > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712713#comment-16712713 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239778574 --- Diff: extensions/mqtt/processors/PublishMQTT.h --- @@ -137,7 +137,7 @@ class PublishMQTT : public processors::AbstractMQTTProcessor { std::shared_ptr logger_; }; -REGISTER_RESOURCE(PublishMQTT); +REGISTER_RESOURCE(PublishMQTT, "This Processor puts the contents of a FlowFile to a MQTT broker for a specified topic. The content of a FlowFile becomes the payload of the MQTT message."); --- End diff -- ``` contents of a FlowFile ``` content? > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712699#comment-16712699 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239776939 --- Diff: extensions/mqtt/processors/AbstractMQTTProcessor.h --- @@ -157,7 +157,6 @@ class AbstractMQTTProcessor : public core::Processor { std::string securityPrivateKeyPassWord_; }; -REGISTER_RESOURCE(AbstractMQTTProcessor); --- End diff -- Good spot, however could you make the class abstact, too? (REGISTER_RESOURCE fails to compile in case the argument is abstact class, so it makes sure it doesn't happen again) I'm also wondering whet making "Processor" abstact would make sense or not. If you create a follow-up Jira, I can do as well. > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINIFICPP-691) Improve method of gathering processor documentation and providing to C2
[ https://issues.apache.org/jira/browse/MINIFICPP-691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712671#comment-16712671 ] ASF GitHub Bot commented on MINIFICPP-691: -- Github user arpadboda commented on a diff in the pull request: https://github.com/apache/nifi-minifi-cpp/pull/457#discussion_r239771411 --- Diff: extensions/libarchive/MergeContent.h --- @@ -334,7 +334,9 @@ class MergeContent : public processors::BinFiles { std::string readContent(std::string path); }; -REGISTER_RESOURCE(MergeContent); +REGISTER_RESOURCE(MergeContent, "Merges a Group of FlowFiles together based on a user-defined strategy and packages them into a single FlowFile. " +"It is recommended that the Processor be configured with only a single incoming connection, as Group of FlowFiles will not be created from " --- End diff -- Processor is configured? > Improve method of gathering processor documentation and providing to C2 > --- > > Key: MINIFICPP-691 > URL: https://issues.apache.org/jira/browse/MINIFICPP-691 > Project: NiFi MiNiFi C++ > Issue Type: Task >Reporter: Mr TheSegfault >Assignee: Mr TheSegfault >Priority: Major > Labels: documentation > Fix For: 0.6.0 > > > Improve method of gathering processor documentation and providing to C2 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5875) PriorityAttributePrioritizer documentation is not clear.
[ https://issues.apache.org/jira/browse/NIFI-5875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712510#comment-16712510 ] ASF GitHub Bot commented on NIFI-5875: -- Github user wselwood commented on a diff in the pull request: https://github.com/apache/nifi/pull/3205#discussion_r239734799 --- Diff: nifi-docs/src/main/asciidoc/user-guide.adoc --- @@ -1091,7 +1091,7 @@ The following prioritizers are available: - *FirstInFirstOutPrioritizer*: Given two FlowFiles, the one that reached the connection first will be processed first. - *NewestFlowFileFirstPrioritizer*: Given two FlowFiles, the one that is newest in the dataflow will be processed first. - *OldestFlowFileFirstPrioritizer*: Given two FlowFiles, the one that is oldest in the dataflow will be processed first. 'This is the default scheme that is used if no prioritizers are selected'. -- *PriorityAttributePrioritizer*: Given two FlowFiles that both have a "priority" attribute, the one that has the highest priority value will be processed first. Note that an UpdateAttribute processor should be used to add the "priority" attribute to the FlowFiles before they reach a connection that has this prioritizer set. Values for the "priority" attribute may be alphanumeric, where "a" is a higher priority than "z", and "1" is a higher priority than "9", for example. +- *PriorityAttributePrioritizer*: Given two FlowFiles, an attribute called “priority” will be extracted. If only one has that attribute it will go first. If the attributes can be parsed as a long, they will be ordered largest number first. For example 9 will come before 1 and 100 will be selected before 99. If only one of them parses as a long that one will be considered to have the higher priority. Otherwise, they will be ordered in alphanumeric order, where "a" is a higher priority than "z", and "1" is a higher priority than "9", for example. --- End diff -- Ouch. Good spot. The old docs got me spun around there. I'll update. > PriorityAttributePrioritizer documentation is not clear. > > > Key: NIFI-5875 > URL: https://issues.apache.org/jira/browse/NIFI-5875 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website >Reporter: Wil Selwood >Priority: Major > > The documentation for the PriorityAttributePrioritizer is not particularly > clear. The First part says highest goes first but then the example at the end > says that 1 would go before 9. This could be clearer. > I've just had to go look up the code to figure out what it was doing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5881) Support the non-ascii name of template when export
[ https://issues.apache.org/jira/browse/NIFI-5881?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712496#comment-16712496 ] ASF GitHub Bot commented on NIFI-5881: -- GitHub user kemixkoo opened a pull request: https://github.com/apache/nifi/pull/3210 NIFI-5881: Enable to export the template for non-ascii name Thank you for submitting a contribution to Apache NiFi. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [ ] Does your PR title start with NIFI- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)? - [ ] Is your initial contribution a single, squashed commit? ### For code changes: - [ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder? - [ ] Have you written or updated unit tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly? - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly? - [ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. You can merge this pull request into a Git repository by running: $ git pull https://github.com/kemixkoo/nifi NIFI-5881_encode_filename Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/3210.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3210 commit 6b6a45b679950ea90cfa0be493616782a8318292 Author: Kemix Koo Date: 2018-12-07T08:31:36Z NIFI-5881: Enable to export the template for non-ascii name > Support the non-ascii name of template when export > -- > > Key: NIFI-5881 > URL: https://issues.apache.org/jira/browse/NIFI-5881 > Project: Apache NiFi > Issue Type: Bug >Reporter: Kemix Koo >Priority: Minor > > Currently, can set the name of template for non-ascii, like Chinese. > But when export the template, the filename of template is wrong. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5826) UpdateRecord processor throwing PatternSyntaxException
[ https://issues.apache.org/jira/browse/NIFI-5826?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712422#comment-16712422 ] ASF GitHub Bot commented on NIFI-5826: -- Github user ijokarumawak commented on the issue: https://github.com/apache/nifi/pull/3200 @bdesert @ottobackwards Thanks for reviewing. I've added unit tests. As a reference, I run the added tests with Lexer before this PR. Following tests failed with current Lexer, but passes with the updated Lexer: This test failed with original Lexer because `[\s]` is converted to `[\\s]` by Lexer and didn't match. ``` [ERROR] testReplaceRegexEscapedCharacters(org.apache.nifi.record.path.TestRecordPath) Time elapsed: 0.007 s <<< FAILURE! org.junit.ComparisonFailure: Replacing whitespace to new line expected: but was: at org.apache.nifi.record.path.TestRecordPath.testReplaceRegexEscapedCharacters(TestRecordPath.java:1046) ``` This test failed with original Lexer because `\[` is converted to `\\[` by Lexer and produced RegEx syntax error. ``` [ERROR] testReplaceRegexEscapedBrackets(org.apache.nifi.record.path.TestRecordPath) Time elapsed: 0.001 s <<< ERROR! org.apache.nifi.record.path.exception.RecordPathException: java.util.regex.PatternSyntaxException: Unclosed character class near index 2 \\[ ^ at org.apache.nifi.record.path.TestRecordPath.testReplaceRegexEscapedBrackets(TestRecordPath.java:1149) ``` Both tests failed with the same cause, and fixed by this PR. > UpdateRecord processor throwing PatternSyntaxException > -- > > Key: NIFI-5826 > URL: https://issues.apache.org/jira/browse/NIFI-5826 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.5.0, 1.6.0, 1.7.0, 1.8.0, 1.7.1 > Environment: Nifi in docker container >Reporter: ravi kargam >Assignee: Ed Berezitsky >Priority: Minor > Attachments: NIFI-5826_PR-3183.patch, > UpdateRecord_Config_Exception.JPG > > > with replacement value strategy as Record Path Value, > I am trying to replace square bracket symbol *[* with parenthesis symbol *(* > in my employeeName column in my csvReader structure with below syntax > replaceRegex(/employeeName, "[\[]", "(") > Processor is throwing following exception. > RecordPathException: java.util.regex.PatternSyntaxException: Unclosed > character class near index 4 [\\[] > It worked fine with other special characters such as \{, }, <, >, ;, _, " > For double qoute ("), i had to use single escape character, for above listed > other characters, worked fine without any escape character. Other folks in > Nifi Slack tried \s, \d, \w, \. > looks like non of them worked. > replace function worked for replacing [ and ]characters. didn't test any > other characters. > Please address resolve the issue. > Regards, > Ravi > > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5875) PriorityAttributePrioritizer documentation is not clear.
[ https://issues.apache.org/jira/browse/NIFI-5875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712289#comment-16712289 ] ASF GitHub Bot commented on NIFI-5875: -- Github user ijokarumawak commented on a diff in the pull request: https://github.com/apache/nifi/pull/3205#discussion_r239684255 --- Diff: nifi-docs/src/main/asciidoc/user-guide.adoc --- @@ -1091,7 +1091,7 @@ The following prioritizers are available: - *FirstInFirstOutPrioritizer*: Given two FlowFiles, the one that reached the connection first will be processed first. - *NewestFlowFileFirstPrioritizer*: Given two FlowFiles, the one that is newest in the dataflow will be processed first. - *OldestFlowFileFirstPrioritizer*: Given two FlowFiles, the one that is oldest in the dataflow will be processed first. 'This is the default scheme that is used if no prioritizers are selected'. -- *PriorityAttributePrioritizer*: Given two FlowFiles that both have a "priority" attribute, the one that has the highest priority value will be processed first. Note that an UpdateAttribute processor should be used to add the "priority" attribute to the FlowFiles before they reach a connection that has this prioritizer set. Values for the "priority" attribute may be alphanumeric, where "a" is a higher priority than "z", and "1" is a higher priority than "9", for example. +- *PriorityAttributePrioritizer*: Given two FlowFiles, an attribute called “priority” will be extracted. If only one has that attribute it will go first. If the attributes can be parsed as a long, they will be ordered largest number first. For example 9 will come before 1 and 100 will be selected before 99. If only one of them parses as a long that one will be considered to have the higher priority. Otherwise, they will be ordered in alphanumeric order, where "a" is a higher priority than "z", and "1" is a higher priority than "9", for example. --- End diff -- >If the attributes can be parsed as a long, they will be ordered largest number first. For example 9 will come before 1 and 100 will be selected before 99 Is this true? As following test case shows, if `1` and `2` are compared, `1` goes first. https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-standard-prioritizers/src/test/java/org/apache/nifi/prioritizer/PriorityAttributePrioritizerTest.java#L91 > PriorityAttributePrioritizer documentation is not clear. > > > Key: NIFI-5875 > URL: https://issues.apache.org/jira/browse/NIFI-5875 > Project: Apache NiFi > Issue Type: Improvement > Components: Documentation & Website >Reporter: Wil Selwood >Priority: Major > > The documentation for the PriorityAttributePrioritizer is not particularly > clear. The First part says highest goes first but then the example at the end > says that 1 would go before 9. This could be clearer. > I've just had to go look up the code to figure out what it was doing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-1893) Add processor for validating JSON
[ https://issues.apache.org/jira/browse/NIFI-1893?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712238#comment-16712238 ] ASF GitHub Bot commented on NIFI-1893: -- Github user nileio commented on the issue: https://github.com/apache/nifi/pull/1037 @basvank not sure if any further progress has been done or there is alternative solutions for this ? someone has suggested using https://github.com/java-json-tools/json-schema-validator .. Is this issue still being considered ? > Add processor for validating JSON > - > > Key: NIFI-1893 > URL: https://issues.apache.org/jira/browse/NIFI-1893 > Project: Apache NiFi > Issue Type: New Feature >Reporter: Matt Burgess >Priority: Major > > NiFi has a ValidateXml processor to validate incoming XML files against a > schema. It would be good to have one to validate JSON files as well. > For example, an input JSON of: > { > name: "Test", > timestamp: 1463499695, > tags: { >"host": "Test_1", >"ip" : "1.1.1.1" > }, > fields: { > "cpu": 10.2, > "load": 15.6 > } > } > Could be validated successfully against the following "schema": > { > "type": "object", > "required": ["name", "tags", "timestamp", "fields"], > "properties": { > "name": {"type": "string"}, > "timestamp": {"type": "integer"}, > "tags": {"type": "object", "items": {"type": "string"}}, > "fields": { "type": "object"} > } > } > There is at least one ASF-friendly library that could be used for > implementation: https://github.com/everit-org/json-schema -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5830) RedisConnectionPoolService does not work with Standalone Redis using non-localhost deployment
[ https://issues.apache.org/jira/browse/NIFI-5830?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712106#comment-16712106 ] ASF GitHub Bot commented on NIFI-5830: -- Github user asfgit closed the pull request at: https://github.com/apache/nifi/pull/3176 > RedisConnectionPoolService does not work with Standalone Redis using > non-localhost deployment > - > > Key: NIFI-5830 > URL: https://issues.apache.org/jira/browse/NIFI-5830 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.8.0 > Environment: Ubuntu 16 LTS, NiFi 1.8.0 >Reporter: Alexander Bukarev >Priority: Major > Fix For: 1.9.0 > > > The controller service {{RedisConnectionPoolService}} does not work with > Standalone Redis which is deployed on a host other than {{localhost}} (or if > Redis uses the port other than {{6379}}). So the only way to use > {{RedisConnectionPoolService}} is to deploy Redis on {{localhost}} and run it > with default port {{6379}}. > *Steps*: > Let's assume our Redis is deployed on host *redis* (not {{localhost}}) and it > listens port 6379 (I use docker for that) > # Create a {{PutDistributedMapCache}} processor > # Configure the processor with {{RedisDistributedMapCacheClientService}} > # Create a new controller service: {{RedisConnectionPoolService}} > #* Choose *Standalone* Redis Mode > #* Use *redis:6379* as a Connection String > # Connect some incoming flow to the {{PutDistributedMapCache}} processor > (I've used {{GetFile}} as a producer) and run the whole flow. Allow > {{GetFile}} to consume some file (if you use {{GetFile}} ro reproduce) and > wait some time till the {{PutDistributedMapCache}} will be schedulled. > Result: > The processor is failed to run. And we can see the error in logs: > {panel}2018-11-17 06:06:47,572 WARN [Timer-Driven Process Thread-2] > o.a.n.controller.tasks.ConnectableTask Administratively Yielding PutDistribu > tedMapCache[id=2041c81f-0167-1000-c82f-d7da2155dfb4] due to uncaught > Exception: org.springframework.data.redis.RedisConnectionFailureExce > ption: Cannot get Jedis connection; nested exception is > redis.clients.jedis.exceptions.JedisConnectionException: Could not get a > resource > from the pool > org.springframework.data.redis.RedisConnectionFailureException: Cannot get > Jedis connection; nested exception is > redis.clients.jedis.exceptions.JedisConnectionException: Could not get a > resource from the pool > at > org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:281) > at > org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:464) > at > org.apache.nifi.redis.service.RedisConnectionPoolService.getConnection(RedisConnectionPoolService.java:89) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:84) > at com.sun.proxy.$Proxy128.getConnection(Unknown Source) > at > org.apache.nifi.redis.service.RedisDistributedMapCacheClientService.withConnection(RedisDistributedMapCacheClientService.java:343) > at > org.apache.nifi.redis.service.RedisDistributedMapCacheClientService.put(RedisDistributedMapCacheClientService.java:189) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:84) > at com.sun.proxy.$Proxy124.put(Unknown Source) > at > org.apache.nifi.processors.standard.PutDistributedMapCache.onTrigger(PutDistributedMapCache.java:202){panel} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5830) RedisConnectionPoolService does not work with Standalone Redis using non-localhost deployment
[ https://issues.apache.org/jira/browse/NIFI-5830?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712104#comment-16712104 ] ASF GitHub Bot commented on NIFI-5830: -- Github user pvillard31 commented on the issue: https://github.com/apache/nifi/pull/3176 Changes make sense to me, reproduced the issue with a Docker instance and confirmed this PR fixes the issue when using a standalone Redis instance. +1, merging to master, thanks @javajefe > RedisConnectionPoolService does not work with Standalone Redis using > non-localhost deployment > - > > Key: NIFI-5830 > URL: https://issues.apache.org/jira/browse/NIFI-5830 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework >Affects Versions: 1.8.0 > Environment: Ubuntu 16 LTS, NiFi 1.8.0 >Reporter: Alexander Bukarev >Priority: Major > > The controller service {{RedisConnectionPoolService}} does not work with > Standalone Redis which is deployed on a host other than {{localhost}} (or if > Redis uses the port other than {{6379}}). So the only way to use > {{RedisConnectionPoolService}} is to deploy Redis on {{localhost}} and run it > with default port {{6379}}. > *Steps*: > Let's assume our Redis is deployed on host *redis* (not {{localhost}}) and it > listens port 6379 (I use docker for that) > # Create a {{PutDistributedMapCache}} processor > # Configure the processor with {{RedisDistributedMapCacheClientService}} > # Create a new controller service: {{RedisConnectionPoolService}} > #* Choose *Standalone* Redis Mode > #* Use *redis:6379* as a Connection String > # Connect some incoming flow to the {{PutDistributedMapCache}} processor > (I've used {{GetFile}} as a producer) and run the whole flow. Allow > {{GetFile}} to consume some file (if you use {{GetFile}} ro reproduce) and > wait some time till the {{PutDistributedMapCache}} will be schedulled. > Result: > The processor is failed to run. And we can see the error in logs: > {panel}2018-11-17 06:06:47,572 WARN [Timer-Driven Process Thread-2] > o.a.n.controller.tasks.ConnectableTask Administratively Yielding PutDistribu > tedMapCache[id=2041c81f-0167-1000-c82f-d7da2155dfb4] due to uncaught > Exception: org.springframework.data.redis.RedisConnectionFailureExce > ption: Cannot get Jedis connection; nested exception is > redis.clients.jedis.exceptions.JedisConnectionException: Could not get a > resource > from the pool > org.springframework.data.redis.RedisConnectionFailureException: Cannot get > Jedis connection; nested exception is > redis.clients.jedis.exceptions.JedisConnectionException: Could not get a > resource from the pool > at > org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:281) > at > org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:464) > at > org.apache.nifi.redis.service.RedisConnectionPoolService.getConnection(RedisConnectionPoolService.java:89) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:84) > at com.sun.proxy.$Proxy128.getConnection(Unknown Source) > at > org.apache.nifi.redis.service.RedisDistributedMapCacheClientService.withConnection(RedisDistributedMapCacheClientService.java:343) > at > org.apache.nifi.redis.service.RedisDistributedMapCacheClientService.put(RedisDistributedMapCacheClientService.java:189) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:84) > at com.sun.proxy.$Proxy124.put(Unknown Source) > at > org.apache.nifi.processors.standard.PutDistributedMapCache.onTrigger(PutDistributedMapCache.java:202){panel} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NIFI-5872) Add compression option on JsonRecordSetWriter
[ https://issues.apache.org/jira/browse/NIFI-5872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712086#comment-16712086 ] ASF GitHub Bot commented on NIFI-5872: -- Github user pvillard31 commented on the issue: https://github.com/apache/nifi/pull/3208 Ran a test on my laptop with a workflow generating a lot of data: - without compression, I reached 129M events / 11.15GB out per 5 minutes - with compression (Snappy), I reached 161M events / 1GB out per 5 minutes It improves the number of processed eps while reducing the amount of data on disk. > Add compression option on JsonRecordSetWriter > - > > Key: NIFI-5872 > URL: https://issues.apache.org/jira/browse/NIFI-5872 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions >Reporter: Pierre Villard >Assignee: Pierre Villard >Priority: Major > > Add a compression option on the JsonRecordSetWriter controller service as we > have on the AvroRecordSetWriter controller service. This can be useful in > case of very IO intensive workflows. -- This message was sent by Atlassian JIRA (v7.6.3#76005)