[GitHub] [nifi-minifi-cpp] aminadinari19 commented on a change in pull request #1040: MINIFICPP-1329- Fix implementation and usages of string to bool

2021-04-14 Thread GitBox


aminadinari19 commented on a change in pull request #1040:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1040#discussion_r612988235



##
File path: controller/MiNiFiController.cpp
##
@@ -167,9 +165,10 @@ int main(int argc, char **argv) {
   socket = secure_context != nullptr ? 
stream_factory_->createSecureSocket(host, port, secure_context) : 
stream_factory_->createSocket(host, port);
   if (getConnectionSize(std::move(socket), std::cout, connection) < 0)
 std::cout << "Could not connect to remote host " << host << ":" << 
port << std::endl;
-} else
+} else {
   std::cout << "Could not connect to remote host " << host << ":" << 
port << std::endl;
   }
+  }

Review comment:
   Fixed :) 




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

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




[GitHub] [nifi-minifi-cpp] aminadinari19 commented on a change in pull request #1040: MINIFICPP-1329- Fix implementation and usages of string to bool

2021-04-14 Thread GitBox


aminadinari19 commented on a change in pull request #1040:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1040#discussion_r612988411



##
File path: extensions/standard-processors/processors/GetTCP.cpp
##
@@ -130,7 +130,7 @@ void GetTCP::onSchedule(const 
std::shared_ptr &context, co
   }
 
   if (context->getProperty(StayConnected.getName(), value)) {
-utils::StringUtils::StringToBool(value, stay_connected_);
+stay_connected_ = utils::StringUtils::toBool(value).value_or(false);

Review comment:
   Fixed :)
   




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

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




[GitHub] [nifi-minifi-cpp] aminadinari19 commented on a change in pull request #1040: MINIFICPP-1329- Fix implementation and usages of string to bool

2021-04-14 Thread GitBox


aminadinari19 commented on a change in pull request #1040:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1040#discussion_r612988521



##
File path: libminifi/include/utils/StringUtils.h
##
@@ -75,13 +75,12 @@ struct string_traits{
 class StringUtils {
  public:
   /**
-   * Converts a string to a boolean
-   * Better handles mixed case.
+   * Checks and converts a string to a boolean
* @param input input string
-   * @param output output string.
+   * @returns an optional of a boolean: true if the string is "true" (ignoring 
case), false if it is "false" (ignoring case), nullopt for any other value
*/
-  static bool StringToBool(std::string input, bool &output);
 
+  static bool StringToBool(std::string input, bool &output);

Review comment:
   Done :)




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

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




[GitHub] [nifi-minifi-cpp] aminadinari19 commented on a change in pull request #1040: MINIFICPP-1329- Fix implementation and usages of string to bool

2021-04-14 Thread GitBox


aminadinari19 commented on a change in pull request #1040:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1040#discussion_r612988788



##
File path: extensions/mqtt/processors/PublishMQTT.cpp
##
@@ -64,7 +64,9 @@ void PublishMQTT::onSchedule(const 
std::shared_ptr &contex
 logger_->log_debug("PublishMQTT: max flow segment size [%" PRIu64 "]", 
max_seg_size_);
   }
   value = "";
-  if (context->getProperty(Retain.getName(), value) && !value.empty() && 
org::apache::nifi::minifi::utils::StringUtils::StringToBool(value, retain_)) {
+  utils::optional retain_parsed;
+  if (context->getProperty(Retain.getName(), value) && (retain_parsed = 
org::apache::nifi::minifi::utils::StringUtils::toBool(value))) {
+retain_ = retain_parsed.value();

Review comment:
   Fixed :)




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

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




[GitHub] [nifi] pvillard31 commented on pull request #4984: NIFI-8409 - ConsumeMQTT Processor Broker URI Expression Language Support

2021-04-14 Thread GitBox


pvillard31 commented on pull request #4984:
URL: https://github.com/apache/nifi/pull/4984#issuecomment-819291764


   Thanks @exceptionfactory - updated the pull request


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

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




[GitHub] [nifi] pvillard31 commented on pull request #4644: NIFI-7974 - Upgrading calcite, hbase, geo2ip deps

2021-04-14 Thread GitBox


pvillard31 commented on pull request #4644:
URL: https://github.com/apache/nifi/pull/4644#issuecomment-819293909


   @exceptionfactory - that's the version I used in my pull request, did I miss 
a place?


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

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




[GitHub] [nifi] asfgit closed pull request #4997: NIFI-8422 added auto close/manager for stale PRs

2021-04-14 Thread GitBox


asfgit closed pull request #4997:
URL: https://github.com/apache/nifi/pull/4997


   


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

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




[jira] [Commented] (NIFI-8422) Establish a Github Actions auto-close Stale PR workflow

2021-04-14 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8422?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17320765#comment-17320765
 ] 

ASF subversion and git services commented on NIFI-8422:
---

Commit f0611f31da6b643e9ed4bbf2c98faf6c44e29ba6 in nifi's branch 
refs/heads/main from Joe Witt
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=f0611f3 ]

NIFI-8422 ensure stale workflow for github ci is there and update asf license 
header missing from a few files

Signed-off-by: Pierre Villard 

This closes #4997.


> Establish a Github Actions auto-close Stale PR workflow
> ---
>
> Key: NIFI-8422
> URL: https://issues.apache.org/jira/browse/NIFI-8422
> Project: Apache NiFi
>  Issue Type: Task
>Reporter: Joe Witt
>Assignee: Joe Witt
>Priority: Major
> Fix For: 1.14.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Discussed on list a couple times.  It is time to start aging off inactive PRs 
> that have not been successfully reviewed and merged.  While auto closing PRs 
> is not desirable neither is ignoring PRs for long and also making it harder 
> to focus on newer/more active PRs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (NIFI-8422) Establish a Github Actions auto-close Stale PR workflow

2021-04-14 Thread Pierre Villard (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8422?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pierre Villard resolved NIFI-8422.
--
Resolution: Fixed

> Establish a Github Actions auto-close Stale PR workflow
> ---
>
> Key: NIFI-8422
> URL: https://issues.apache.org/jira/browse/NIFI-8422
> Project: Apache NiFi
>  Issue Type: Task
>Reporter: Joe Witt
>Assignee: Joe Witt
>Priority: Major
> Fix For: 1.14.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Discussed on list a couple times.  It is time to start aging off inactive PRs 
> that have not been successfully reviewed and merged.  While auto closing PRs 
> is not desirable neither is ignoring PRs for long and also making it harder 
> to focus on newer/more active PRs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (MINIFICPP-1457) Implement InputRequirements

2021-04-14 Thread Jira


[ 
https://issues.apache.org/jira/browse/MINIFICPP-1457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17320797#comment-17320797
 ] 

Ádám Markovics commented on MINIFICPP-1457:
---

PR submitted: https://github.com/apache/nifi-minifi-cpp/pull/1042

> Implement InputRequirements
> ---
>
> Key: MINIFICPP-1457
> URL: https://issues.apache.org/jira/browse/MINIFICPP-1457
> Project: Apache NiFi MiNiFi C++
>  Issue Type: New Feature
>Reporter: Arpad Boda
>Assignee: Ádám Markovics
>Priority: Major
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> InputRequirements already exist in NiFi.
> Processors can have the following "annotations":
> {code}
> enum Requirement {
> /**
>  * This value is used to indicate that the Processor requires input 
> from other Processors
>  * in order to run. As a result, the Processor will not be valid if 
> it does not have any
>  * incoming connections.
>  */
> INPUT_REQUIRED,
> /**
>  * This value is used to indicate that the Processor will consume 
> data from an incoming
>  * connection but does not require an incoming connection in order to 
> perform its task.
>  * If the {@link InputRequirement} annotation is not present, this is 
> the default value
>  * that is used.
>  */
> INPUT_ALLOWED,
> /**
>  * This value is used to indicate that the Processor is a "Source 
> Processor" and does
>  * not accept incoming connections. Because the Processor does not 
> pull FlowFiles from
>  * an incoming connection, it can be very confusing for users who 
> create incoming connections
>  * to the Processor. As a result, this value can be used in order to 
> clarify that incoming
>  * connections will not be used. This prevents the user from even 
> creating such a connection.
>  */
> INPUT_FORBIDDEN;
> }
> {code}
> Should be used both in yaml config validation and population of C2 manifest



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] pvillard31 edited a comment on pull request #4644: NIFI-7974 - Upgrading calcite, hbase, geo2ip deps

2021-04-14 Thread GitBox


pvillard31 edited a comment on pull request #4644:
URL: https://github.com/apache/nifi/pull/4644#issuecomment-819293909


   @exceptionfactory - that's the version I used in my pull request, did I miss 
a place?
   Just rebased against main branch though.


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

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




[jira] [Updated] (NIFI-8325) Rework SNMP processors

2021-04-14 Thread Jira


 [ 
https://issues.apache.org/jira/browse/NIFI-8325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lehel Boér updated NIFI-8325:
-
Summary: Rework SNMP processors  (was: Rework, support and add SNMP 
processors in NiFi)

> Rework SNMP processors
> --
>
> Key: NIFI-8325
> URL: https://issues.apache.org/jira/browse/NIFI-8325
> Project: Apache NiFi
>  Issue Type: New Feature
>Reporter: Lehel Boér
>Assignee: Lehel Boér
>Priority: Major
>  Time Spent: 2.5h
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi-minifi-cpp] fgerlits commented on a change in pull request #1017: MINIFICPP-1515 - Add integration tests testing different flowfile sizes in a simple flow

2021-04-14 Thread GitBox


fgerlits commented on a change in pull request #1017:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1017#discussion_r613094766



##
File path: 
docker/test/integration/minifi/validators/SingleFileContentHashValidator.py
##
@@ -0,0 +1,43 @@
+import logging
+import os
+
+from os import listdir
+from os.path import join
+
+from .FileOutputValidator import FileOutputValidator
+from ..core.HashUtils import md5
+
+class SingleFileContentHashValidator(FileOutputValidator):
+"""
+Validates the content of a single file in the given directory.
+"""
+
+def __init__(self, expected_md5_hash, subdir=''):
+self.valid = False
+self.expected_md5_hash = expected_md5_hash
+self.subdir = subdir
+
+def validate(self):
+self.valid = False
+full_dir = os.path.join(self.output_dir, self.subdir)
+logging.info("Output folder: %s", full_dir)
+
+if not os.path.isdir(full_dir):
+return self.valid
+
+listing = listdir(full_dir)
+if listing:
+for l in listing:
+logging.info("name:: %s", l)
+out_file_name = listing[0]
+logging.info("dir %s -- name %s", full_dir, out_file_name)
+full_path = join(full_dir, out_file_name)
+if not os.path.isfile(full_path):
+return self.valid

Review comment:
   Why not `continue` instead of `return`?  If 'l' is a subdirectory in 
`output_dir`, we want to keep looking for matching files.

##
File path: 
docker/test/integration/minifi/validators/SingleFileContentHashValidator.py
##
@@ -0,0 +1,43 @@
+import logging
+import os
+
+from os import listdir
+from os.path import join
+
+from .FileOutputValidator import FileOutputValidator
+from ..core.HashUtils import md5
+
+class SingleFileContentHashValidator(FileOutputValidator):
+"""
+Validates the content of a single file in the given directory.
+"""
+
+def __init__(self, expected_md5_hash, subdir=''):
+self.valid = False
+self.expected_md5_hash = expected_md5_hash
+self.subdir = subdir
+
+def validate(self):
+self.valid = False
+full_dir = os.path.join(self.output_dir, self.subdir)
+logging.info("Output folder: %s", full_dir)
+
+if not os.path.isdir(full_dir):
+return self.valid
+
+listing = listdir(full_dir)
+if listing:
+for l in listing:

Review comment:
   I'm not a fan of one-char variable names, especially `l` (and `O` etc) 
-- this could be `file_name`, for example




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

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




[GitHub] [nifi-minifi-cpp] fgerlits commented on a change in pull request #1017: MINIFICPP-1515 - Add integration tests testing different flowfile sizes in a simple flow

2021-04-14 Thread GitBox


fgerlits commented on a change in pull request #1017:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1017#discussion_r613094766



##
File path: 
docker/test/integration/minifi/validators/SingleFileContentHashValidator.py
##
@@ -0,0 +1,43 @@
+import logging
+import os
+
+from os import listdir
+from os.path import join
+
+from .FileOutputValidator import FileOutputValidator
+from ..core.HashUtils import md5
+
+class SingleFileContentHashValidator(FileOutputValidator):
+"""
+Validates the content of a single file in the given directory.
+"""
+
+def __init__(self, expected_md5_hash, subdir=''):
+self.valid = False
+self.expected_md5_hash = expected_md5_hash
+self.subdir = subdir
+
+def validate(self):
+self.valid = False
+full_dir = os.path.join(self.output_dir, self.subdir)
+logging.info("Output folder: %s", full_dir)
+
+if not os.path.isdir(full_dir):
+return self.valid
+
+listing = listdir(full_dir)
+if listing:
+for l in listing:
+logging.info("name:: %s", l)
+out_file_name = listing[0]
+logging.info("dir %s -- name %s", full_dir, out_file_name)
+full_path = join(full_dir, out_file_name)
+if not os.path.isfile(full_path):
+return self.valid

Review comment:
   Why not `continue` instead of `return`?  If `l` is a subdirectory in 
`output_dir`, we want to keep looking for matching files.




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

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




[GitHub] [nifi-minifi-cpp] fgerlits commented on a change in pull request #1017: MINIFICPP-1515 - Add integration tests testing different flowfile sizes in a simple flow

2021-04-14 Thread GitBox


fgerlits commented on a change in pull request #1017:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1017#discussion_r613094766



##
File path: 
docker/test/integration/minifi/validators/SingleFileContentHashValidator.py
##
@@ -0,0 +1,43 @@
+import logging
+import os
+
+from os import listdir
+from os.path import join
+
+from .FileOutputValidator import FileOutputValidator
+from ..core.HashUtils import md5
+
+class SingleFileContentHashValidator(FileOutputValidator):
+"""
+Validates the content of a single file in the given directory.
+"""
+
+def __init__(self, expected_md5_hash, subdir=''):
+self.valid = False
+self.expected_md5_hash = expected_md5_hash
+self.subdir = subdir
+
+def validate(self):
+self.valid = False
+full_dir = os.path.join(self.output_dir, self.subdir)
+logging.info("Output folder: %s", full_dir)
+
+if not os.path.isdir(full_dir):
+return self.valid
+
+listing = listdir(full_dir)
+if listing:
+for l in listing:
+logging.info("name:: %s", l)
+out_file_name = listing[0]
+logging.info("dir %s -- name %s", full_dir, out_file_name)
+full_path = join(full_dir, out_file_name)
+if not os.path.isfile(full_path):
+return self.valid

Review comment:
   Why not `continue` instead of `return`?  If `l` is a subdirectory in 
`output_dir`, we want to keep looking for matching files.
   
   EDIT: I have misunderstood what this does; it seems to assume that there is 
a single file in the directory.  This is slightly weird; my preference would 
be, in descending order:
   
   - specify the name (or full path) of the file in the constructor, so no 
listing is necessary;
   - or try to match all files in the given directory;
   - or log an error message when there is more than one file in the given 
directory.




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

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




[GitHub] [nifi] gresockj commented on a change in pull request #4991: NIFI-7134: Allowing auto-reloading of Jetty key/truststores

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4991:
URL: https://github.com/apache/nifi/pull/4991#discussion_r613112540



##
File path: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-ssl-autoloading-utils/src/main/java/org/apache/nifi/autoload/PrivateKeyInfo.java
##
@@ -0,0 +1,79 @@
+/*
+ * 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.autoload;
+
+import java.util.Objects;
+
+public class PrivateKeyInfo implements Comparable {

Review comment:
   Good point, I like the latter.




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

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




[GitHub] [nifi] gresockj commented on a change in pull request #4991: NIFI-7134: Allowing auto-reloading of Jetty key/truststores

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4991:
URL: https://github.com/apache/nifi/pull/4991#discussion_r613116435



##
File path: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-ssl-autoloading-utils/src/test/java/org/apache/nifi/autoload/TestSSLContextFactoryAutoLoaderTask.java
##
@@ -0,0 +1,113 @@
+/*
+ * 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.autoload;
+
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.StandardTlsConfiguration;
+import org.apache.nifi.security.util.TlsConfiguration;
+import org.apache.nifi.security.util.TlsException;
+import org.apache.nifi.util.NiFiProperties;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mockito;
+
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.StandardCopyOption;
+import java.nio.file.WatchService;
+import java.security.GeneralSecurityException;
+import java.security.KeyStoreException;
+import java.security.NoSuchAlgorithmException;
+import java.security.UnrecoverableEntryException;
+
+public class TestSSLContextFactoryAutoLoaderTask {
+
+private static final Path KEYSTORE = new 
File("src/test/resources/keystore.jks").toPath();
+private static final String KEYSTORE_PASSWORD = "testtesttest";
+private static final String KEY_PASSWORD = "testtesttest";
+private static final String KEYSTORE_TYPE = "JKS";
+
+private static final String DEFAULT_KEY_ALIAS = "nifi-key";
+private static final String DEFAULT_CERT_DN = "CN=localhost, OU=NIFI";
+
+private SSLContextFactoryAutoLoaderTask task;
+private NiFiProperties nifiProperties;
+
+@Before
+public void init() throws GeneralSecurityException, IOException {
+this.createKeystore(DEFAULT_KEY_ALIAS, DEFAULT_CERT_DN);
+
+nifiProperties = Mockito.mock(NiFiProperties.class);
+
Mockito.when(nifiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_PASSWD)).thenReturn(KEYSTORE_PASSWORD);
+
Mockito.when(nifiProperties.getProperty(NiFiProperties.SECURITY_KEY_PASSWD)).thenReturn(KEY_PASSWORD);
+
Mockito.when(nifiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_TYPE)).thenReturn(KEYSTORE_TYPE);
+
+task = new SSLContextFactoryAutoLoaderTask.Builder()
+.keystorePath(KEYSTORE)
+.keystoreWatchService(Mockito.mock(WatchService.class))
+.truststorePath(Mockito.mock(Path.class))
+.autoLoader(Mockito.mock(SSLContextFactoryAutoLoader.class))
+.nifiProperties(nifiProperties)
+.pollIntervalMillis(100)
+.build();
+}
+
+@Test
+public void testIsReloadAllowed_true() throws IOException, 
GeneralSecurityException {
+this.createKeystore(DEFAULT_KEY_ALIAS, DEFAULT_CERT_DN); // Creates a 
keystore with the same DNs and alias, so this is allowed
+Assert.assertTrue(task.isReloadAllowed());
+}
+
+@Test
+public void testIsReloadAllowed_differentAlias() throws IOException, 
GeneralSecurityException {
+this.createKeystore("different-alias", DEFAULT_CERT_DN);
+Assert.assertFalse(task.isReloadAllowed());
+}
+
+@Test
+public void testIsReloadAllowed_differentSubjectDN() throws IOException, 
GeneralSecurityException {
+this.createKeystore(DEFAULT_KEY_ALIAS, "CN=different");
+Assert.assertFalse(task.isReloadAllowed());
+}
+
+@Test
+public void testIsReloadAllowed_differentIssuerSerialNumber() throws 
IOException, UnrecoverableEntryException, NoSuchAlgorithmException, 
KeyStoreException, TlsException {
+// This is a keystore with the same key alias and cert DN, but with a 
different issuer cert in the cert chain,
+// showing that we disallow cert updates with the same issuer DN but 
different actual issuer serial number
+Files.copy(new File("src/test/resources/test-keystore.jks").toPath(), 
KEYSTORE, StandardCopyOption.REPLACE_EXISTING);
+
+Assert.assertFalse(task.isReloadAllowed());
+}
+
+private void cr

[GitHub] [nifi] gresockj commented on a change in pull request #4991: NIFI-7134: Allowing auto-reloading of Jetty key/truststores

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4991:
URL: https://github.com/apache/nifi/pull/4991#discussion_r613121826



##
File path: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-ssl-autoloading-utils/src/main/java/org/apache/nifi/autoload/PrivateKeyInfo.java
##
@@ -0,0 +1,79 @@
+/*
+ * 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.autoload;
+
+import java.util.Objects;
+
+public class PrivateKeyInfo implements Comparable {
+private static final String COMPARISON_FORMAT = "%s-%s-%s-%s";
+
+/**
+ * Creates a PrivateKeyInfo containing the state we want to track.
+ * @param subjectDN The subject DN of the cert
+ * @param issuerDN The issuer DN
+ * @param alias The alias in the keystore
+ * @param issuerSerialNumber Optional serial number of the issuer, if the 
issuer's certificate was found
+ *   in the cert chain
+ */
+public PrivateKeyInfo(String subjectDN, String issuerDN, String alias, 
String issuerSerialNumber) {
+this.subjectDN = subjectDN;
+this.issuerDN = issuerDN;
+this.alias = alias;
+this.issuerSerialNumber = issuerSerialNumber;
+}
+
+private String subjectDN;
+private String issuerDN;

Review comment:
   Great point, and this would remove the need for the issuerSerialNumber 
as well.




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

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




[GitHub] [nifi] gresockj commented on a change in pull request #4991: NIFI-7134: Allowing auto-reloading of Jetty key/truststores

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4991:
URL: https://github.com/apache/nifi/pull/4991#discussion_r613121826



##
File path: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-ssl-autoloading-utils/src/main/java/org/apache/nifi/autoload/PrivateKeyInfo.java
##
@@ -0,0 +1,79 @@
+/*
+ * 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.autoload;
+
+import java.util.Objects;
+
+public class PrivateKeyInfo implements Comparable {
+private static final String COMPARISON_FORMAT = "%s-%s-%s-%s";
+
+/**
+ * Creates a PrivateKeyInfo containing the state we want to track.
+ * @param subjectDN The subject DN of the cert
+ * @param issuerDN The issuer DN
+ * @param alias The alias in the keystore
+ * @param issuerSerialNumber Optional serial number of the issuer, if the 
issuer's certificate was found
+ *   in the cert chain
+ */
+public PrivateKeyInfo(String subjectDN, String issuerDN, String alias, 
String issuerSerialNumber) {
+this.subjectDN = subjectDN;
+this.issuerDN = issuerDN;
+this.alias = alias;
+this.issuerSerialNumber = issuerSerialNumber;
+}
+
+private String subjectDN;
+private String issuerDN;

Review comment:
   Great point.




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

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




[GitHub] [nifi] gresockj commented on a change in pull request #4991: NIFI-7134: Allowing auto-reloading of Jetty key/truststores

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4991:
URL: https://github.com/apache/nifi/pull/4991#discussion_r613155455



##
File path: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-ssl-autoloading-utils/src/main/java/org/apache/nifi/autoload/SSLContextFactoryAutoLoaderTask.java
##
@@ -0,0 +1,270 @@
+/*
+ * 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.autoload;
+
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.TlsException;
+import org.apache.nifi.util.NiFiProperties;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.nio.file.Path;
+import java.nio.file.StandardWatchEventKinds;
+import java.nio.file.WatchEvent;
+import java.nio.file.WatchKey;
+import java.nio.file.WatchService;
+import java.security.KeyStore;
+import java.security.KeyStoreException;
+import java.security.NoSuchAlgorithmException;
+import java.security.UnrecoverableEntryException;
+import java.security.cert.X509Certificate;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.TimeUnit;
+
+/**
+ * The runnable task that polls the WatchService for updates to the keystore 
and truststore.
+ *
+ */
+public class SSLContextFactoryAutoLoaderTask implements Runnable {
+
+private static final Logger LOGGER = 
LoggerFactory.getLogger(SSLContextFactoryAutoLoaderTask.class);
+
+private static final int MIN_FILE_AGE = 5000;
+
+private final Path keystorePath;
+private final Path truststorePath;
+private final WatchService keystoreWatchService;
+private final WatchService truststoreWatchService;
+private final long pollIntervalMillis;
+private final SSLContextFactoryAutoLoader autoLoader;
+private final NiFiProperties nifiProperties;
+private final List candidateStores;
+
+private final List existingKeystoreState;
+
+private volatile boolean stopped = false;
+
+private SSLContextFactoryAutoLoaderTask(final Builder builder) throws 
NoSuchAlgorithmException, UnrecoverableEntryException,
+KeyStoreException, TlsException {
+this.keystorePath = builder.keystorePath;
+this.truststorePath = builder.truststorePath;
+this.keystoreWatchService = builder.keystoreWatchService;
+this.truststoreWatchService = builder.truststoreWatchService;
+this.pollIntervalMillis = builder.pollIntervalMillis;
+this.autoLoader = builder.autoLoader;
+this.nifiProperties = builder.niFiProperties;
+this.existingKeystoreState = this.getKeystoreState();
+this.candidateStores = new ArrayList<>();
+}
+
+private boolean poll(WatchService watchService, Collection 
storePaths) {
+if (storePaths == null || storePaths.isEmpty()) {
+throw new RuntimeException("A polling directory must be 
specified.");
+}
+WatchKey key;
+try {
+key = watchService.poll(pollIntervalMillis, TimeUnit.MILLISECONDS);
+} catch (InterruptedException x) {
+LOGGER.info("WatchService interrupted, returning...");
+return false;
+}
+
+boolean storeChanged = false;
+
+// Key comes back as null when there are no new create events, but we 
still want to continue processing
+// so we can consider files added to the candidateNars list in 
previous iterations
+
+if (key != null) {
+for (WatchEvent event : key.pollEvents()) {
+final WatchEvent.Kind kind = event.kind();
+if (kind == StandardWatchEventKinds.OVERFLOW) {
+continue;
+}
+
+final WatchEvent ev = (WatchEvent) event;
+final Path filename = ev.context();
+
+for(Path storePath : storePaths) {
+
+final Path autoLoadFile = 
storePath.getParent().resolve(filename);
+final String autoLoadFilename = 
autoLoadFile.toFile().getName();
+
+  

[GitHub] [nifi] gresockj commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613199731



##
File path: 
nifi-bootstrap/src/test/java/org/apache/nifi/bootstrap/util/TestSecureNiFiConfigUtil.java
##
@@ -0,0 +1,208 @@
+/*
+ * 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.bootstrap.util;
+
+import org.apache.nifi.properties.NiFiPropertiesLoader;
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.TlsException;
+import org.apache.nifi.util.NiFiProperties;
+import org.bouncycastle.asn1.x509.GeneralName;
+import org.bouncycastle.util.IPAddress;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.xml.bind.DatatypeConverter;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
+import java.security.InvalidKeyException;
+import java.security.Key;
+import java.security.KeyStore;
+import java.security.KeyStoreException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.NoSuchProviderException;
+import java.security.SignatureException;
+import java.security.UnrecoverableKeyException;
+import java.security.cert.Certificate;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class TestSecureNiFiConfigUtil {
+private Logger logger = 
LoggerFactory.getLogger("org.apache.nifi.bootstrap.util.TestSecureNiFiConfigUtil");
+
+private static final boolean EXPECT_STORES_TO_EXIST = true;
+
+private String nifiPropertiesFile = "src/test/resources/nifi.properties";
+private String keystorePath = "src/test/resources/keystore.p12";
+private String truststorePath = "src/test/resources/truststore.p12";

Review comment:
   Good call




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

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




[GitHub] [nifi] gresockj commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613203025



##
File path: 
nifi-bootstrap/src/test/java/org/apache/nifi/bootstrap/util/TestSecureNiFiConfigUtil.java
##
@@ -0,0 +1,208 @@
+/*
+ * 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.bootstrap.util;
+
+import org.apache.nifi.properties.NiFiPropertiesLoader;
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.TlsException;
+import org.apache.nifi.util.NiFiProperties;
+import org.bouncycastle.asn1.x509.GeneralName;
+import org.bouncycastle.util.IPAddress;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.xml.bind.DatatypeConverter;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
+import java.security.InvalidKeyException;
+import java.security.Key;
+import java.security.KeyStore;
+import java.security.KeyStoreException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.NoSuchProviderException;
+import java.security.SignatureException;
+import java.security.UnrecoverableKeyException;
+import java.security.cert.Certificate;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class TestSecureNiFiConfigUtil {
+private Logger logger = 
LoggerFactory.getLogger("org.apache.nifi.bootstrap.util.TestSecureNiFiConfigUtil");
+
+private static final boolean EXPECT_STORES_TO_EXIST = true;
+
+private String nifiPropertiesFile = "src/test/resources/nifi.properties";
+private String keystorePath = "src/test/resources/keystore.p12";
+private String truststorePath = "src/test/resources/truststore.p12";
+
+private NiFiProperties configureSecureNiFiProperties(String 
testPropertiesFile) throws IOException {
+Files.copy(new File(testPropertiesFile).toPath(), new 
File(nifiPropertiesFile).toPath(), StandardCopyOption.REPLACE_EXISTING);
+SecureNiFiConfigUtil.configureSecureNiFiProperties(nifiPropertiesFile, 
logger);
+
+return new NiFiPropertiesLoader().load(nifiPropertiesFile);
+}
+
+private static String getFileHash(String filename) throws 
NoSuchAlgorithmException, IOException {
+MessageDigest md = MessageDigest.getInstance("MD5");
+md.update(Files.readAllBytes(Paths.get(filename)));
+byte[] digest = md.digest();
+return DatatypeConverter.printHexBinary(digest).toUpperCase();
+}
+
+@After
+public void cleanUp() throws IOException {
+Files.deleteIfExists(new File(nifiPropertiesFile).toPath());
+Files.deleteIfExists(new File(keystorePath).toPath());
+Files.deleteIfExists(new File(truststorePath).toPath());
+}
+
+private void runTestWithExpectedSuccess(String testPropertiesFile, 
List expectedSANs) throws IOException, TlsException, KeyStoreException,
+NoSuchAlgorithmException, UnrecoverableKeyException, 
CertificateException, InvalidKeyException, NoSuchProviderException, 
SignatureException {
+NiFiProperties niFiProperties = 
this.configureSecureNiFiProperties(testPropertiesFile);
+
+keystorePath = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE);
+Assert.assertEquals("./src/test/resources/keystore.p12", keystorePath);
+
Assert.assertFalse(niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_PASSWD).isEmpty());
+Assert.assertEquals("PKCS12", 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_TYPE));
+
+char[] keyPassword = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_PASSWD).toCharArray();
+KeyStore keyStore = KeyStoreUtils.loadKeyStore(keystorePath,
+
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_PASSWD).toCharArray(),
+
niFiProperti

[GitHub] [nifi] gresockj commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613212430



##
File path: 
nifi-bootstrap/src/test/java/org/apache/nifi/bootstrap/util/TestSecureNiFiConfigUtil.java
##
@@ -0,0 +1,208 @@
+/*
+ * 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.bootstrap.util;
+
+import org.apache.nifi.properties.NiFiPropertiesLoader;
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.TlsException;
+import org.apache.nifi.util.NiFiProperties;
+import org.bouncycastle.asn1.x509.GeneralName;
+import org.bouncycastle.util.IPAddress;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.xml.bind.DatatypeConverter;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
+import java.security.InvalidKeyException;
+import java.security.Key;
+import java.security.KeyStore;
+import java.security.KeyStoreException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.NoSuchProviderException;
+import java.security.SignatureException;
+import java.security.UnrecoverableKeyException;
+import java.security.cert.Certificate;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class TestSecureNiFiConfigUtil {
+private Logger logger = 
LoggerFactory.getLogger("org.apache.nifi.bootstrap.util.TestSecureNiFiConfigUtil");
+
+private static final boolean EXPECT_STORES_TO_EXIST = true;
+
+private String nifiPropertiesFile = "src/test/resources/nifi.properties";

Review comment:
   I'll do this with nifi.properties, but the keystore and truststore paths 
are referenced from within the nifi.properties file, and since the 
SecureNiFiConfigUtil uses file paths instead of Class.getResource(), I think it 
makes more sense to keep the reference to src/test/resources in the 
keystore/truststore cases.  Let me know if you see any other options for those 
cases.




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

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




[GitHub] [nifi] asfgit closed pull request #4995: NIFI-8411 update to use latest java action and specific distribution …

2021-04-14 Thread GitBox


asfgit closed pull request #4995:
URL: https://github.com/apache/nifi/pull/4995


   


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

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




[jira] [Commented] (NIFI-8411) Update github CI usage to latest java action for distribution control

2021-04-14 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17320978#comment-17320978
 ] 

ASF subversion and git services commented on NIFI-8411:
---

Commit 8c66049d1d5f6a47ec2c4ed6cfcb22496504130c in nifi's branch 
refs/heads/main from Joe Witt
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=8c66049 ]

NIFI-8411 update to use latest java action and specific distribution so we can 
validate azul and zulu

This closes #4995

Signed-off-by: Mike Thomsen 


> Update github CI usage to latest java action for distribution control
> -
>
> Key: NIFI-8411
> URL: https://issues.apache.org/jira/browse/NIFI-8411
> Project: Apache NiFi
>  Issue Type: Task
>  Components: Tools and Build
>Reporter: Joe Witt
>Assignee: Joe Witt
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Switch to 
> https://github.com/actions/setup-java/blob/main/docs/switching-to-v2.md
> And investigate how to explicitly set maven version until we figure out how 
> to ensure all repos we interact with are done so under https exclusively.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (NIFI-8411) Update github CI usage to latest java action for distribution control

2021-04-14 Thread Mike Thomsen (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mike Thomsen resolved NIFI-8411.

Fix Version/s: 1.14.0
   Resolution: Fixed

> Update github CI usage to latest java action for distribution control
> -
>
> Key: NIFI-8411
> URL: https://issues.apache.org/jira/browse/NIFI-8411
> Project: Apache NiFi
>  Issue Type: Task
>  Components: Tools and Build
>Reporter: Joe Witt
>Assignee: Joe Witt
>Priority: Major
> Fix For: 1.14.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Switch to 
> https://github.com/actions/setup-java/blob/main/docs/switching-to-v2.md
> And investigate how to explicitly set maven version until we figure out how 
> to ensure all repos we interact with are done so under https exclusively.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (NIFI-8428) UI - Access Policy icon not displaying properly for Controller Services

2021-04-14 Thread Mark Bean (Jira)
Mark Bean created NIFI-8428:
---

 Summary: UI - Access Policy icon not displaying properly for 
Controller Services
 Key: NIFI-8428
 URL: https://issues.apache.org/jira/browse/NIFI-8428
 Project: Apache NiFi
  Issue Type: Bug
  Components: Core UI
Affects Versions: 1.13.2
Reporter: Mark Bean


Due to fixed-width column for icons of a controller service on the process 
group controller services tab, the Access Policy icon may wrap to a new line in 
certain cases. Extend the width of this column.

This is similar to NIFI-7361.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] exceptionfactory commented on pull request #4644: NIFI-7974 - Upgrading calcite, hbase, geo2ip deps

2021-04-14 Thread GitBox


exceptionfactory commented on pull request #4644:
URL: https://github.com/apache/nifi/pull/4644#issuecomment-819494677


   > @exceptionfactory - that's the version I used in my pull request, did I 
miss a place?
   > Just rebased against main branch though.
   
   Thanks for the update @pvillard31, I misread the update, looks good.


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

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




[GitHub] [nifi-minifi-cpp] szaszm closed pull request #1041: MINIFICPP-1358 Add SendBody property functionality to InvokeHTTP processor

2021-04-14 Thread GitBox


szaszm closed pull request #1041:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1041


   


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

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




[GitHub] [nifi-minifi-cpp] fgerlits commented on a change in pull request #1040: MINIFICPP-1329- Fix implementation and usages of string to bool

2021-04-14 Thread GitBox


fgerlits commented on a change in pull request #1040:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1040#discussion_r613232213



##
File path: libminifi/include/utils/StringUtils.h
##
@@ -75,13 +75,12 @@ struct string_traits{
 class StringUtils {
  public:
   /**
-   * Converts a string to a boolean
-   * Better handles mixed case.
+   * Checks and converts a string to a boolean
* @param input input string
-   * @param output output string.
+   * @returns an optional of a boolean: true if the string is "true" (ignoring 
case), false if it is "false" (ignoring case), nullopt for any other value
*/
-  static bool StringToBool(std::string input, bool &output);
 
+  static bool StringToBool(std::string input, bool &output);

Review comment:
   I can still see it; have you pushed your change?




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

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




[jira] [Assigned] (NIFI-8428) UI - Access Policy icon not displaying properly for Controller Services

2021-04-14 Thread Pierre Villard (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8428?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pierre Villard reassigned NIFI-8428:


Assignee: Pierre Villard

> UI - Access Policy icon not displaying properly for Controller Services
> ---
>
> Key: NIFI-8428
> URL: https://issues.apache.org/jira/browse/NIFI-8428
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core UI
>Affects Versions: 1.13.2
>Reporter: Mark Bean
>Assignee: Pierre Villard
>Priority: Major
>
> Due to fixed-width column for icons of a controller service on the process 
> group controller services tab, the Access Policy icon may wrap to a new line 
> in certain cases. Extend the width of this column.
> This is similar to NIFI-7361.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (NIFI-8429) DBCPConnectionPool leaks registered drivers

2021-04-14 Thread Peter Turcsanyi (Jira)
Peter Turcsanyi created NIFI-8429:
-

 Summary: DBCPConnectionPool leaks registered drivers
 Key: NIFI-8429
 URL: https://issues.apache.org/jira/browse/NIFI-8429
 Project: Apache NiFi
  Issue Type: Bug
  Components: Extensions
Reporter: Peter Turcsanyi


{{DBCPConnectionPool}} executes the following steps when it gets enabled: 
(https://github.com/apache/nifi/blob/f0611f31da6b643e9ed4bbf2c98faf6c44e29ba6/nifi-nar-bundles/nifi-standard-services/nifi-dbcp-service-bundle/nifi-dbcp-service/src/main/java/org/apache/nifi/dbcp/DBCPConnectionPool.java#L473-L502)
- creates a custom class loader
- loads the driver's class via {{Class.forName()}} using the class loader 
created in the previous step => the driver will be registered in DriverManager 
via the driver's static initialiser (1st registration)
- wraps the driver into {{DriverShim}} and registers it in DriverManager => 2nd 
registration
- passes the driver's class name and the class loader to {{commons-dbcp2}}'s 
{{BasicDataSource}} which in the end instantiates the driver directly and uses 
that instance in effect (not the registered ones)

The registered drivers will never get removed/deregistered from DriverManager 
(each OnEnabled leaks 2 instances). Unused drivers can also hold other 
resources (like threads in case of Oracle driver 
https://support.oracle.com/knowledge/Middleware/1901449_1.html) which can lead 
to further leaking.  

Suggested solution:
- {{PropertyDescriptor.dynamicallyModifiesClassPath(true)}} could be used 
instead of the custom class loader
- {{@RequiresInstanceClassLoading}} could be used to load the driver and the 
controller service code in the same class loader (which had been the intended 
purpose of {{DriverShim}} originally)
- the registered driver could be passed to {{BasicDataSource}} for usage (no 
further instance creation needed)

This way only one driver instance (per controller service) would be registered 
and used (until the user changes the driver url on the controller service). 
This minimises the number of registered drivers and the resource leaking 
mentioned earlier.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] pvillard31 opened a new pull request #5000: NIFI-8428 - increased actions column width for controller services

2021-04-14 Thread GitBox


pvillard31 opened a new pull request #5000:
URL: https://github.com/apache/nifi/pull/5000


   
   Thank you for submitting a contribution to Apache NiFi.
   
   Please provide a short description of the PR here:
   
    Description of PR
   
   _Enables X functionality; fixes bug NIFI-._
   
   In order to streamline the review of the contribution we ask you
   to ensure the following steps have been taken:
   
   ### For all changes:
   - [ ] Is there a JIRA ticket associated with this PR? Is it referenced 
in the commit message?
   
   - [ ] Does your PR title start with **NIFI-** where  is the JIRA 
number you are trying to resolve? Pay particular attention to the hyphen "-" 
character.
   
   - [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `main`)?
   
   - [ ] Is your initial contribution a single, squashed commit? _Additional 
commits in response to PR reviewer feedback should be made on this branch and 
pushed to allow change tracking. Do not `squash` or use `--force` when pushing 
to allow for clean monitoring of changes._
   
   ### For code changes:
   - [ ] Have you ensured that the full suite of tests is executed via `mvn 
-Pcontrib-check clean install` at the root `nifi` folder?
   - [ ] Have you written or updated unit tests to verify your changes?
   - [ ] Have you verified that the full build is successful on JDK 8?
   - [ ] Have you verified that the full build is successful on JDK 11?
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)? 
   - [ ] If applicable, have you updated the `LICENSE` file, including the main 
`LICENSE` file under `nifi-assembly`?
   - [ ] If applicable, have you updated the `NOTICE` file, including the main 
`NOTICE` file found under `nifi-assembly`?
   - [ ] If adding new Properties, have you added `.displayName` in addition to 
.name (programmatic access) for each of the new properties?
   
   ### For documentation related changes:
   - [ ] Have you ensured that format looks appropriate for the output in which 
it is rendered?
   
   ### Note:
   Please ensure that once the PR is submitted, you check GitHub Actions CI for 
build issues and submit an update to your PR as soon as possible.
   


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

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




[GitHub] [nifi] pvillard31 commented on pull request #5000: NIFI-8428 - increased actions column width for controller services

2021-04-14 Thread GitBox


pvillard31 commented on pull request #5000:
URL: https://github.com/apache/nifi/pull/5000#issuecomment-819510129


   Similar change to #4214 that focused on reporting tasks.


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

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




[jira] [Updated] (NIFI-8428) UI - Access Policy icon not displaying properly for Controller Services

2021-04-14 Thread Pierre Villard (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8428?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pierre Villard updated NIFI-8428:
-
Status: Patch Available  (was: Open)

> UI - Access Policy icon not displaying properly for Controller Services
> ---
>
> Key: NIFI-8428
> URL: https://issues.apache.org/jira/browse/NIFI-8428
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core UI
>Affects Versions: 1.13.2
>Reporter: Mark Bean
>Assignee: Pierre Villard
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Due to fixed-width column for icons of a controller service on the process 
> group controller services tab, the Access Policy icon may wrap to a new line 
> in certain cases. Extend the width of this column.
> This is similar to NIFI-7361.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (NIFI-8429) DBCPConnectionPool leaks registered drivers

2021-04-14 Thread Simon Bence (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8429?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Simon Bence reassigned NIFI-8429:
-

Assignee: Simon Bence

> DBCPConnectionPool leaks registered drivers
> ---
>
> Key: NIFI-8429
> URL: https://issues.apache.org/jira/browse/NIFI-8429
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Extensions
>Reporter: Peter Turcsanyi
>Assignee: Simon Bence
>Priority: Major
>
> {{DBCPConnectionPool}} executes the following steps when it gets enabled: 
> (https://github.com/apache/nifi/blob/f0611f31da6b643e9ed4bbf2c98faf6c44e29ba6/nifi-nar-bundles/nifi-standard-services/nifi-dbcp-service-bundle/nifi-dbcp-service/src/main/java/org/apache/nifi/dbcp/DBCPConnectionPool.java#L473-L502)
> - creates a custom class loader
> - loads the driver's class via {{Class.forName()}} using the class loader 
> created in the previous step => the driver will be registered in 
> DriverManager via the driver's static initialiser (1st registration)
> - wraps the driver into {{DriverShim}} and registers it in DriverManager => 
> 2nd registration
> - passes the driver's class name and the class loader to {{commons-dbcp2}}'s 
> {{BasicDataSource}} which in the end instantiates the driver directly and 
> uses that instance in effect (not the registered ones)
> The registered drivers will never get removed/deregistered from DriverManager 
> (each OnEnabled leaks 2 instances). Unused drivers can also hold other 
> resources (like threads in case of Oracle driver 
> https://support.oracle.com/knowledge/Middleware/1901449_1.html) which can 
> lead to further leaking.  
> Suggested solution:
> - {{PropertyDescriptor.dynamicallyModifiesClassPath(true)}} could be used 
> instead of the custom class loader
> - {{@RequiresInstanceClassLoading}} could be used to load the driver and the 
> controller service code in the same class loader (which had been the intended 
> purpose of {{DriverShim}} originally)
> - the registered driver could be passed to {{BasicDataSource}} for usage (no 
> further instance creation needed)
> This way only one driver instance (per controller service) would be 
> registered and used (until the user changes the driver url on the controller 
> service). This minimises the number of registered drivers and the resource 
> leaking mentioned earlier.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi-minifi-cpp] fgerlits commented on a change in pull request #1040: MINIFICPP-1329- Fix implementation and usages of string to bool

2021-04-14 Thread GitBox


fgerlits commented on a change in pull request #1040:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1040#discussion_r613251303



##
File path: extensions/standard-processors/tests/unit/PutFileTests.cpp
##
@@ -467,4 +467,39 @@ TEST_CASE("TestPutFilePermissions", 
"[PutFilePermissions]") {
   REQUIRE(utils::file::FileUtils::get_permissions(putfiledir, perms));
   REQUIRE(perms == 0777);
 }
+
+TEST_CASE("PutFileCreateDirectoryTest", "[PutFilePermissions]") {
+  TestController testController;
+  LogTestController::getInstance().setDebug();
+  LogTestController::getInstance().setDebug();
+  LogTestController::getInstance().setDebug();
+  
LogTestController::getInstance().setDebug();
+  
LogTestController::getInstance().setDebug();
+
+  std::shared_ptr plan = testController.createPlan();
+  std::shared_ptr getfile = plan->addProcessor("GetFile", 
"getfileCreate2");
+  std::shared_ptr putfile = plan->addProcessor("PutFile", 
"putfile", core::Relationship("success", "description"), true);
+  plan->addProcessor("LogAttribute", "logattribute", 
core::Relationship("success", "description"), true);
+
+  // Define Directory
+  char format[] = "/tmp/gt.XX";
+  auto dir = testController.createTempDirectory(format);
+  char format2[] = "/tmp/ft.XX";
+  // Defining a sub directory
+  auto putfiledir = testController.createTempDirectory(format2) + 
utils::file::FileUtils::get_separator() + "test_dir";
+  plan->setProperty(getfile, 
org::apache::nifi::minifi::processors::GetFile::Directory.getName(), dir);
+  plan->setProperty(putfile, 
org::apache::nifi::minifi::processors::PutFile::Directory.getName(), 
putfiledir);
+
+  plan->setProperty(putfile, 
org::apache::nifi::minifi::processors::PutFile::CreateDirs.getName(), "true");

Review comment:
   I like the new SECTIONs, this test has quite good coverage now. :+1: 




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

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




[jira] [Resolved] (MINIFICPP-1358) SendBody property is unused in InvokeHTTP

2021-04-14 Thread Gabor Gyimesi (Jira)


 [ 
https://issues.apache.org/jira/browse/MINIFICPP-1358?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gabor Gyimesi resolved MINIFICPP-1358.
--
Resolution: Fixed

> SendBody property is unused in InvokeHTTP
> -
>
> Key: MINIFICPP-1358
> URL: https://issues.apache.org/jira/browse/MINIFICPP-1358
> Project: Apache NiFi MiNiFi C++
>  Issue Type: Bug
>Reporter: Gabor Gyimesi
>Assignee: Gabor Gyimesi
>Priority: Minor
>  Labels: easy-fix, newbie
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> SendBody attribute is defined but never used in InvokeHTTP processor.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi-minifi-cpp] lordgamez opened a new pull request #1052: MINIFICPP-1244 Support the Initial Start Position property in TailFile

2021-04-14 Thread GitBox


lordgamez opened a new pull request #1052:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1052


   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 main)?
   
   - [ ] 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 GitHub Actions CI 
results for build issues and submit an update to your PR as soon as possible.
   


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

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




[GitHub] [nifi] gresockj commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613314232



##
File path: 
nifi-bootstrap/src/test/java/org/apache/nifi/bootstrap/util/TestSecureNiFiConfigUtil.java
##
@@ -0,0 +1,208 @@
+/*
+ * 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.bootstrap.util;
+
+import org.apache.nifi.properties.NiFiPropertiesLoader;
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.TlsException;
+import org.apache.nifi.util.NiFiProperties;
+import org.bouncycastle.asn1.x509.GeneralName;
+import org.bouncycastle.util.IPAddress;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.xml.bind.DatatypeConverter;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
+import java.security.InvalidKeyException;
+import java.security.Key;
+import java.security.KeyStore;
+import java.security.KeyStoreException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.NoSuchProviderException;
+import java.security.SignatureException;
+import java.security.UnrecoverableKeyException;
+import java.security.cert.Certificate;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class TestSecureNiFiConfigUtil {
+private Logger logger = 
LoggerFactory.getLogger("org.apache.nifi.bootstrap.util.TestSecureNiFiConfigUtil");
+
+private static final boolean EXPECT_STORES_TO_EXIST = true;
+
+private String nifiPropertiesFile = "src/test/resources/nifi.properties";

Review comment:
   Interestingly, though, in the nifi.properties case, Class.getResource() 
won't work, because it's a temporary file that I create on the fly during the 
test, and there of course isn't a resource yet to get when I want to get the 
Path to that file using the Class.getResource() method.  So I'm going to 
suggest we keep it as is, and I'll just extract src/test/resources/ into a 
constant.  How does that sound?




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

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




[GitHub] [nifi] exceptionfactory commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


exceptionfactory commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613320447



##
File path: 
nifi-bootstrap/src/test/java/org/apache/nifi/bootstrap/util/TestSecureNiFiConfigUtil.java
##
@@ -0,0 +1,208 @@
+/*
+ * 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.bootstrap.util;
+
+import org.apache.nifi.properties.NiFiPropertiesLoader;
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.TlsException;
+import org.apache.nifi.util.NiFiProperties;
+import org.bouncycastle.asn1.x509.GeneralName;
+import org.bouncycastle.util.IPAddress;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.xml.bind.DatatypeConverter;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
+import java.security.InvalidKeyException;
+import java.security.Key;
+import java.security.KeyStore;
+import java.security.KeyStoreException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.NoSuchProviderException;
+import java.security.SignatureException;
+import java.security.UnrecoverableKeyException;
+import java.security.cert.Certificate;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class TestSecureNiFiConfigUtil {
+private Logger logger = 
LoggerFactory.getLogger("org.apache.nifi.bootstrap.util.TestSecureNiFiConfigUtil");
+
+private static final boolean EXPECT_STORES_TO_EXIST = true;
+
+private String nifiPropertiesFile = "src/test/resources/nifi.properties";

Review comment:
   The file in `src/test/resources` will need to be copied to be a 
temporary location and updated with the generated paths, so 
Class.getResourceAsStream() could be used to read the initial file.  
Alternatively, if it is simple enough to just write the minimum properties to a 
temporary file, perhaps the `nifi.properties` in `src/test/resources` may not 
be necessary at all.




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

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




[jira] [Created] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread David Handermann (Jira)
David Handermann created NIFI-8430:
--

 Summary: ReportLineageToAtlas Truststore Loader Thread Leak
 Key: NIFI-8430
 URL: https://issues.apache.org/jira/browse/NIFI-8430
 Project: Apache NiFi
  Issue Type: Bug
Affects Versions: 1.13.2
Reporter: David Handermann
Assignee: David Handermann


{{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
Service due a bug in Hadoop Common 3.1.1.  HDFS-14037 resolved the problem with 
the truststore loader thread leak, so the Atlas dependencies should use Hadoop 
Common 3.1.3 or later.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread David Handermann (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8430?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17321079#comment-17321079
 ] 

David Handermann commented on NIFI-8430:


Changing the trust store loading approach in NIFI-8312 to support different 
types surfaced the thread leak problem latent in Hadoop Common 3.1.1.

> ReportLineageToAtlas Truststore Loader Thread Leak
> --
>
> Key: NIFI-8430
> URL: https://issues.apache.org/jira/browse/NIFI-8430
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.13.2
>Reporter: David Handermann
>Assignee: David Handermann
>Priority: Major
>
> {{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
> Service due a bug in Hadoop Common 3.1.1.  HDFS-14037 resolved the problem 
> with the truststore loader thread leak, so the Atlas dependencies should use 
> Hadoop Common 3.1.3 or later.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] gresockj commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613340644



##
File path: 
nifi-commons/nifi-security-utils/src/main/java/org/apache/nifi/security/util/StandardTlsConfiguration.java
##
@@ -203,6 +205,38 @@ public static StandardTlsConfiguration 
fromNiFiProperties(NiFiProperties niFiPro
 return tlsConfiguration;
 }
 
+/**
+ * Returns a {@link org.apache.nifi.security.util.TlsConfiguration} 
instantiated from the relevant {@link NiFiProperties} properties.
+ *
+ * @param niFiProperties the NiFi properties, as a simple 
java.util.Properties object
+ * @return a populated TlsConfiguration container object
+ */
+public static StandardTlsConfiguration fromNiFiProperties(Properties 
niFiProperties) {
+if (niFiProperties == null) {
+throw new IllegalArgumentException("The NiFi properties cannot be 
null");
+}
+
+String keystorePath = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE);
+String keystorePassword = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_PASSWD);
+String keyPassword = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEY_PASSWD);
+String keystoreType = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_TYPE);
+String truststorePath = 
niFiProperties.getProperty(NiFiProperties.SECURITY_TRUSTSTORE);
+String truststorePassword = 
niFiProperties.getProperty(NiFiProperties.SECURITY_TRUSTSTORE_PASSWD);
+String truststoreType = 
niFiProperties.getProperty(NiFiProperties.SECURITY_TRUSTSTORE_TYPE);
+String protocol = TLS_PROTOCOL_VERSION;
+
+final StandardTlsConfiguration tlsConfiguration = new 
StandardTlsConfiguration(keystorePath, keystorePassword, keyPassword,
+keystoreType, truststorePath, truststorePassword,
+truststoreType, protocol);
+if (logger.isDebugEnabled()) {
+logger.debug("Instantiating TlsConfiguration from NiFi properties: 
{}, {}, {}, {}, {}, {}, {}, {}",
+keystorePath, 
tlsConfiguration.getKeystorePasswordForLogging(), 
tlsConfiguration.getKeyPasswordForLogging(), keystoreType,
+truststorePath, 
tlsConfiguration.getTruststorePasswordForLogging(), truststoreType, protocol);
+}

Review comment:
   I'm not sure, it was also in the method from which I copied this.




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

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




[GitHub] [nifi] gresockj commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613342402



##
File path: 
nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/util/SecureNiFiConfigUtil.java
##
@@ -0,0 +1,191 @@
+/*
+ * 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.bootstrap.util;
+
+import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.apache.commons.lang3.tuple.Pair;
+import org.apache.nifi.security.util.KeyStoreUtils;
+import org.apache.nifi.security.util.StandardTlsConfiguration;
+import org.apache.nifi.security.util.TlsConfiguration;
+import org.apache.nifi.util.NiFiProperties;
+import org.bouncycastle.util.IPAddress;
+import org.slf4j.Logger;
+
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+import java.io.UncheckedIOException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.StandardCopyOption;
+import java.security.GeneralSecurityException;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Properties;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+public class SecureNiFiConfigUtil {
+
+private static final int CERT_DURATION_DAYS = 60;
+public static final String LOCALHOST_IP = "127.0.0.1";
+private static final String LOCALHOST_NAME = "localhost";
+
+private SecureNiFiConfigUtil() {
+
+}
+
+/**
+ * If HTTPS is enabled (nifi.web.https.port is set), but the keystore file 
specified in nifi.security.keystore
+ * does not exist, this will generate a key pair and self-signed 
certificate, generate the associated keystore
+ * and truststore and write them to disk under the configured filepaths, 
generate a secure random keystore password
+ * and truststore password, and write these to the nifi.properties file.
+ * @param nifiPropertiesFilename The filename of the nifi.properties file
+ * @param cmdLogger The bootstrap logger
+ * @throws IOException can be thrown when writing keystores to disk
+ * @throws RuntimeException indicates a security exception while 
generating keystores
+ */
+public static void configureSecureNiFiProperties(String 
nifiPropertiesFilename, Logger cmdLogger) throws IOException, RuntimeException {
+final File propertiesFile = new File(nifiPropertiesFilename);
+final Properties nifiProperties = loadProperties(propertiesFile);
+
+if (!nifiProperties.getProperty(NiFiProperties.WEB_HTTPS_PORT, 
"").isEmpty()) {
+String keystorePath = 
nifiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE, "");
+String truststorePath = 
nifiProperties.getProperty(NiFiProperties.SECURITY_TRUSTSTORE, "");
+if (!keystorePath.isEmpty() && !truststorePath.isEmpty()) {
+File keystore = new File(keystorePath);
+File truststore = new File(truststorePath);
+if (!keystore.exists() && !truststore.exists()) {
+TlsConfiguration tlsConfiguration = null;
+cmdLogger.info("Generating default self-signed 
certificates, keystore and truststore for secure Apache NiFi configuration.  " +
+"This certificate will expire in {} days, and it 
is recommended to acquire your own certificates in order to properly secure 
Apache NiFi.", CERT_DURATION_DAYS);
+try {
+Pair subjectAlternativeNames = 
getSubjectAlternativeNames(nifiProperties);
+tlsConfiguration = 
KeyStoreUtils.createTlsConfigAndNewKeystoreTruststore(StandardTlsConfiguration
+.fromNiFiProperties(nifiProperties), 
CERT_DURATION_DAYS, subjectAlternativeNames.getLeft(),
+subjectAlternativeNames.getRight());
+} catch (IOException e) {
+cmdLogger.error("Encountered an I/O exception while 
generating secure Apache NiFi configuration.", e);
+throw e;
+} catch (GeneralSecurityException e) {
+  

[GitHub] [nifi] exceptionfactory opened a new pull request #5001: NIFI-8430 Set hadoop-common:3.1.4 for nifi-atlas-bundle

2021-04-14 Thread GitBox


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


    Description of PR
   
   NIFI-8430 Sets hadoop-common to version 3.1.4 in `nifi-atlas-bundle` to 
override version 3.1.1 included in Atlas 2.1.0.  Hadoop Common 3.1.4 includes 
resolution of [HDFS-14037](https://issues.apache.org/jira/browse/HDFS-14037) 
for thread leaks related to monitoring truststore files for changes.
   
   In order to streamline the review of the contribution we ask you
   to ensure the following steps have been taken:
   
   ### For all changes:
   - [X] Is there a JIRA ticket associated with this PR? Is it referenced 
in the commit message?
   
   - [X] Does your PR title start with **NIFI-** where  is the JIRA 
number you are trying to resolve? Pay particular attention to the hyphen "-" 
character.
   
   - [X] Has your PR been rebased against the latest commit within the target 
branch (typically `main`)?
   
   - [X] Is your initial contribution a single, squashed commit? _Additional 
commits in response to PR reviewer feedback should be made on this branch and 
pushed to allow change tracking. Do not `squash` or use `--force` when pushing 
to allow for clean monitoring of changes._
   
   ### For code changes:
   - [X] Have you ensured that the full suite of tests is executed via `mvn 
-Pcontrib-check clean install` at the root `nifi` folder?
   - [ ] Have you written or updated unit tests to verify your changes?
   - [ ] Have you verified that the full build is successful on JDK 8?
   - [X] Have you verified that the full build is successful on JDK 11?
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)? 
   - [ ] If applicable, have you updated the `LICENSE` file, including the main 
`LICENSE` file under `nifi-assembly`?
   - [ ] If applicable, have you updated the `NOTICE` file, including the main 
`NOTICE` file found under `nifi-assembly`?
   - [ ] If adding new Properties, have you added `.displayName` in addition to 
.name (programmatic access) for each of the new properties?
   
   ### For documentation related changes:
   - [ ] Have you ensured that format looks appropriate for the output in which 
it is rendered?
   
   ### Note:
   Please ensure that once the PR is submitted, you check GitHub Actions CI for 
build issues and submit an update to your PR as soon as possible.
   


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

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




[jira] [Updated] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-8430:
---
Status: Patch Available  (was: In Progress)

> ReportLineageToAtlas Truststore Loader Thread Leak
> --
>
> Key: NIFI-8430
> URL: https://issues.apache.org/jira/browse/NIFI-8430
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.13.2
>Reporter: David Handermann
>Assignee: David Handermann
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> {{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
> Service due a bug in Hadoop Common 3.1.1.  HDFS-14037 resolved the problem 
> with the truststore loader thread leak, so the Atlas dependencies should use 
> Hadoop Common 3.1.3 or later.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] thenatog commented on pull request #4988: NIFI-7870 - Fix anonymous access control for advanced UI resources

2021-04-14 Thread GitBox


thenatog commented on pull request #4988:
URL: https://github.com/apache/nifi/pull/4988#issuecomment-819620934


   Updated some aspects but I don't believe the code as it stands will be 
working. Working to implement the bearer token resolver aspect and fix one 
aspect of the cookie checking.


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

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




[GitHub] [nifi] thenatog edited a comment on pull request #4988: NIFI-7870 - Fix anonymous access control for advanced UI resources

2021-04-14 Thread GitBox


thenatog edited a comment on pull request #4988:
URL: https://github.com/apache/nifi/pull/4988#issuecomment-819620934


   Updated as per most of the feedback so far but I don't believe the code as 
it stands will be working. Working to implement the bearer token resolver 
aspect and fix one aspect of the cookie checking.


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

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




[GitHub] [nifi] markobean commented on pull request #5000: NIFI-8428 - increased actions column width for controller services

2021-04-14 Thread GitBox


markobean commented on pull request #5000:
URL: https://github.com/apache/nifi/pull/5000#issuecomment-819629496


   +1
   Built and installed NiFi with this fix. The previously observed issue of 
poor icon placement has been fixed. Looks good to me.
   


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

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




[jira] [Created] (NIFI-8431) Redundant validation of Dynamic Properties

2021-04-14 Thread Mark Bean (Jira)
Mark Bean created NIFI-8431:
---

 Summary: Redundant validation of Dynamic Properties
 Key: NIFI-8431
 URL: https://issues.apache.org/jira/browse/NIFI-8431
 Project: Apache NiFi
  Issue Type: Bug
  Components: Core Framework
Affects Versions: 1.13.2
Reporter: Mark Bean


The validate method of AbstractConfigurableComponent was modified recently. 
Where it use to loop through only supported property descriptors (via 
getSupportedPropertyDescriptors method call), it now loops through all 
descriptors in the context (via ValidationContext.getProperties.keySet() call). 
This includes dynamic properties. Therefore, the subsequent validation of 
dynamic properties is redundant, and can produce duplicate validation errors.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] gresockj commented on a change in pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on a change in pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#discussion_r613465911



##
File path: 
nifi-commons/nifi-security-utils/src/main/java/org/apache/nifi/security/util/StandardTlsConfiguration.java
##
@@ -203,6 +205,38 @@ public static StandardTlsConfiguration 
fromNiFiProperties(NiFiProperties niFiPro
 return tlsConfiguration;
 }
 
+/**
+ * Returns a {@link org.apache.nifi.security.util.TlsConfiguration} 
instantiated from the relevant {@link NiFiProperties} properties.
+ *
+ * @param niFiProperties the NiFi properties, as a simple 
java.util.Properties object
+ * @return a populated TlsConfiguration container object
+ */
+public static StandardTlsConfiguration fromNiFiProperties(Properties 
niFiProperties) {
+if (niFiProperties == null) {
+throw new IllegalArgumentException("The NiFi properties cannot be 
null");
+}
+
+String keystorePath = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE);
+String keystorePassword = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_PASSWD);
+String keyPassword = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEY_PASSWD);
+String keystoreType = 
niFiProperties.getProperty(NiFiProperties.SECURITY_KEYSTORE_TYPE);
+String truststorePath = 
niFiProperties.getProperty(NiFiProperties.SECURITY_TRUSTSTORE);
+String truststorePassword = 
niFiProperties.getProperty(NiFiProperties.SECURITY_TRUSTSTORE_PASSWD);
+String truststoreType = 
niFiProperties.getProperty(NiFiProperties.SECURITY_TRUSTSTORE_TYPE);
+String protocol = TLS_PROTOCOL_VERSION;
+
+final StandardTlsConfiguration tlsConfiguration = new 
StandardTlsConfiguration(keystorePath, keystorePassword, keyPassword,
+keystoreType, truststorePath, truststorePassword,
+truststoreType, protocol);
+if (logger.isDebugEnabled()) {
+logger.debug("Instantiating TlsConfiguration from NiFi properties: 
{}, {}, {}, {}, {}, {}, {}, {}",
+keystorePath, 
tlsConfiguration.getKeystorePasswordForLogging(), 
tlsConfiguration.getKeyPasswordForLogging(), keystoreType,
+truststorePath, 
tlsConfiguration.getTruststorePasswordForLogging(), truststoreType, protocol);
+}

Review comment:
   That said, I certainly don't need it in the new method, so I'll remove 
it.




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

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




[GitHub] [nifi] exceptionfactory closed pull request #5001: NIFI-8430 Set hadoop-common:3.1.4 for nifi-atlas-bundle

2021-04-14 Thread GitBox


exceptionfactory closed pull request #5001:
URL: https://github.com/apache/nifi/pull/5001


   


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

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




[GitHub] [nifi] exceptionfactory commented on pull request #5001: NIFI-8430 Set hadoop-common:3.1.4 for nifi-atlas-bundle

2021-04-14 Thread GitBox


exceptionfactory commented on pull request #5001:
URL: https://github.com/apache/nifi/pull/5001#issuecomment-819747529


   Runtime testing determined that this did not resolve the thread leak issue 
in `ReportLineageToAtlas`.


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

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




[jira] [Updated] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-8430:
---
Description: {{ReportLineageToAtlas}} can leak threads when configured with 
an SSL Context Service following recent changes to trust store configuration.  
(was: {{ReportLineageToAtlas}} can leak threads when configured with an SSL 
Context Service due a bug in Hadoop Common 3.1.1.  HDFS-14037 resolved the 
problem with the truststore loader thread leak, so the Atlas dependencies 
should use Hadoop Common 3.1.3 or later.)

> ReportLineageToAtlas Truststore Loader Thread Leak
> --
>
> Key: NIFI-8430
> URL: https://issues.apache.org/jira/browse/NIFI-8430
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.13.2
>Reporter: David Handermann
>Assignee: David Handermann
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> {{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
> Service following recent changes to trust store configuration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann reassigned NIFI-8430:
--

Assignee: Peter Turcsanyi  (was: David Handermann)

> ReportLineageToAtlas Truststore Loader Thread Leak
> --
>
> Key: NIFI-8430
> URL: https://issues.apache.org/jira/browse/NIFI-8430
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.13.2
>Reporter: David Handermann
>Assignee: Peter Turcsanyi
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> {{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
> Service following recent changes to trust store configuration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Comment Edited] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread David Handermann (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8430?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17321079#comment-17321079
 ] 

David Handermann edited comment on NIFI-8430 at 4/14/21, 6:44 PM:
--

Changing the trust store loading approach in NIFI-8312 to support different 
types surfaced the thread leak problem.


was (Author: exceptionfactory):
Changing the trust store loading approach in NIFI-8312 to support different 
types surfaced the thread leak problem latent in Hadoop Common 3.1.1.

> ReportLineageToAtlas Truststore Loader Thread Leak
> --
>
> Key: NIFI-8430
> URL: https://issues.apache.org/jira/browse/NIFI-8430
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.13.2
>Reporter: David Handermann
>Assignee: Peter Turcsanyi
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> {{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
> Service following recent changes to trust store configuration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] turcsanyip opened a new pull request #5002: NIFI-8430: Close Atlas client in order to free up resources

2021-04-14 Thread GitBox


turcsanyip opened a new pull request #5002:
URL: https://github.com/apache/nifi/pull/5002


   https://issues.apache.org/jira/browse/NIFI-8430
   
   In order to streamline the review of the contribution we ask you
   to ensure the following steps have been taken:
   
   ### For all changes:
   - [ ] Is there a JIRA ticket associated with this PR? Is it referenced 
in the commit message?
   
   - [ ] Does your PR title start with **NIFI-** where  is the JIRA 
number you are trying to resolve? Pay particular attention to the hyphen "-" 
character.
   
   - [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `main`)?
   
   - [ ] Is your initial contribution a single, squashed commit? _Additional 
commits in response to PR reviewer feedback should be made on this branch and 
pushed to allow change tracking. Do not `squash` or use `--force` when pushing 
to allow for clean monitoring of changes._
   
   ### For code changes:
   - [ ] Have you ensured that the full suite of tests is executed via `mvn 
-Pcontrib-check clean install` at the root `nifi` folder?
   - [ ] Have you written or updated unit tests to verify your changes?
   - [ ] Have you verified that the full build is successful on JDK 8?
   - [ ] Have you verified that the full build is successful on JDK 11?
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)? 
   - [ ] If applicable, have you updated the `LICENSE` file, including the main 
`LICENSE` file under `nifi-assembly`?
   - [ ] If applicable, have you updated the `NOTICE` file, including the main 
`NOTICE` file found under `nifi-assembly`?
   - [ ] If adding new Properties, have you added `.displayName` in addition to 
.name (programmatic access) for each of the new properties?
   
   ### For documentation related changes:
   - [ ] Have you ensured that format looks appropriate for the output in which 
it is rendered?
   
   ### Note:
   Please ensure that once the PR is submitted, you check GitHub Actions CI for 
build issues and submit an update to your PR as soon as possible.
   


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

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




[jira] [Created] (NIFI-8432) PutSQL - Throwing IndexOutOfBounds exception in ErrorHandler

2021-04-14 Thread Steven Youtsey (Jira)
Steven Youtsey created NIFI-8432:


 Summary: PutSQL - Throwing IndexOutOfBounds exception in 
ErrorHandler
 Key: NIFI-8432
 URL: https://issues.apache.org/jira/browse/NIFI-8432
 Project: Apache NiFi
  Issue Type: Bug
  Components: Extensions
Affects Versions: 1.8.0
Reporter: Steven Youtsey


When the incoming FlowFile has a bad query statement, batching is being used, 
and Rollback on Failure is false, the error handler that is dealing with the 
JDBC query exception is throwing IndexOutOfBounds when trying to get the 
FlowFile from the collection of batchFlowFiles. 

It appears that there is only one FlowFile in the batch.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] simonbence opened a new pull request #5003: NIFI-8429 Changing DBCPConnectionPool driver manager in order to prevent from leaking

2021-04-14 Thread GitBox


simonbence opened a new pull request #5003:
URL: https://github.com/apache/nifi/pull/5003


   I implemented the changes suggested in 
[NIFI-8429](https://issues.apache.org/jira/browse/NIFI-8429). This will prevent 
unnecessary creation of drivers and leaking threads using the toolbox provided 
by the framework (some custom code has been removed accordingly).
   
   Thank you for submitting a contribution to Apache NiFi.
   
   Please provide a short description of the PR here:
   
    Description of PR
   
   _Enables X functionality; fixes bug NIFI-._
   
   In order to streamline the review of the contribution we ask you
   to ensure the following steps have been taken:
   
   ### For all changes:
   - [ ] Is there a JIRA ticket associated with this PR? Is it referenced 
in the commit message?
   
   - [ ] Does your PR title start with **NIFI-** where  is the JIRA 
number you are trying to resolve? Pay particular attention to the hyphen "-" 
character.
   
   - [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `main`)?
   
   - [ ] Is your initial contribution a single, squashed commit? _Additional 
commits in response to PR reviewer feedback should be made on this branch and 
pushed to allow change tracking. Do not `squash` or use `--force` when pushing 
to allow for clean monitoring of changes._
   
   ### For code changes:
   - [ ] Have you ensured that the full suite of tests is executed via `mvn 
-Pcontrib-check clean install` at the root `nifi` folder?
   - [ ] Have you written or updated unit tests to verify your changes?
   - [ ] Have you verified that the full build is successful on JDK 8?
   - [ ] Have you verified that the full build is successful on JDK 11?
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)? 
   - [ ] If applicable, have you updated the `LICENSE` file, including the main 
`LICENSE` file under `nifi-assembly`?
   - [ ] If applicable, have you updated the `NOTICE` file, including the main 
`NOTICE` file found under `nifi-assembly`?
   - [ ] If adding new Properties, have you added `.displayName` in addition to 
.name (programmatic access) for each of the new properties?
   
   ### For documentation related changes:
   - [ ] Have you ensured that format looks appropriate for the output in which 
it is rendered?
   
   ### Note:
   Please ensure that once the PR is submitted, you check GitHub Actions CI for 
build issues and submit an update to your PR as soon as possible.
   


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

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




[jira] [Created] (NIFI-8433) Add decommission command to nifi.sh

2021-04-14 Thread Mark Payne (Jira)
Mark Payne created NIFI-8433:


 Summary: Add decommission command to nifi.sh
 Key: NIFI-8433
 URL: https://issues.apache.org/jira/browse/NIFI-8433
 Project: Apache NiFi
  Issue Type: Improvement
  Components: Core Framework
Reporter: Mark Payne
Assignee: Mark Payne


Add the ability to run {{bin/nifi.sh decommission}} and have that take care of 
disconnecting node from the cluster, offloading, removing the node, and 
shutting it down.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] markap14 opened a new pull request #5004: NIFI-8433: Added ability to decommission a node in a cluster

2021-04-14 Thread GitBox


markap14 opened a new pull request #5004:
URL: https://github.com/apache/nifi/pull/5004


   
   Thank you for submitting a contribution to Apache NiFi.
   
   Please provide a short description of the PR here:
   
    Description of PR
   
   _Enables X functionality; fixes bug NIFI-._
   
   In order to streamline the review of the contribution we ask you
   to ensure the following steps have been taken:
   
   ### For all changes:
   - [ ] Is there a JIRA ticket associated with this PR? Is it referenced 
in the commit message?
   
   - [ ] Does your PR title start with **NIFI-** where  is the JIRA 
number you are trying to resolve? Pay particular attention to the hyphen "-" 
character.
   
   - [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `main`)?
   
   - [ ] Is your initial contribution a single, squashed commit? _Additional 
commits in response to PR reviewer feedback should be made on this branch and 
pushed to allow change tracking. Do not `squash` or use `--force` when pushing 
to allow for clean monitoring of changes._
   
   ### For code changes:
   - [ ] Have you ensured that the full suite of tests is executed via `mvn 
-Pcontrib-check clean install` at the root `nifi` folder?
   - [ ] Have you written or updated unit tests to verify your changes?
   - [ ] Have you verified that the full build is successful on JDK 8?
   - [ ] Have you verified that the full build is successful on JDK 11?
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)? 
   - [ ] If applicable, have you updated the `LICENSE` file, including the main 
`LICENSE` file under `nifi-assembly`?
   - [ ] If applicable, have you updated the `NOTICE` file, including the main 
`NOTICE` file found under `nifi-assembly`?
   - [ ] If adding new Properties, have you added `.displayName` in addition to 
.name (programmatic access) for each of the new properties?
   
   ### For documentation related changes:
   - [ ] Have you ensured that format looks appropriate for the output in which 
it is rendered?
   
   ### Note:
   Please ensure that once the PR is submitted, you check GitHub Actions CI for 
build issues and submit an update to your PR as soon as possible.
   


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

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




[jira] [Created] (NIFI-8434) Add the possibility to use new class loader when a controller service is enabled

2021-04-14 Thread Simon Bence (Jira)
Simon Bence created NIFI-8434:
-

 Summary: Add the possibility to use new class loader when a 
controller service is enabled
 Key: NIFI-8434
 URL: https://issues.apache.org/jira/browse/NIFI-8434
 Project: Apache NiFi
  Issue Type: Improvement
  Components: Core Framework
Reporter: Simon Bence
Assignee: Simon Bence


Currently NiFi supports both instance level class loading (with 
RequiresInstanceClassLoading annotation) and dynamically modified class path 
(with PropertyDescriptor.dynamicallyModifiesClassPath for controller services.

The PropertyDescriptor.dynamicallyModifiesClassPath, when the property changes, 
makes the framework to create a new ClassLoader, making a separate "sandbox" 
for the new run (enable) of the service.

In certain cases, this might not be enough and "reloading" of the ClassLoader 
would be preferred during every enabling of the controller service. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (NIFI-8429) DBCPConnectionPool leaks registered drivers

2021-04-14 Thread Simon Bence (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8429?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17321309#comment-17321309
 ] 

Simon Bence commented on NIFI-8429:
---

A very well formed proposal, I quickly implemented it. This looks as a big step 
forward, however, this is still not a full separation and drivers might have 
some remain (Oracle driver for example still has some as it might not being 
deregistered). In order to implement a full separation between runs of a 
controller service, I added this ticket proposal 
https://issues.apache.org/jira/browse/NIFI-8434 and I will look into it deeper 
as soon I will have the chance.

> DBCPConnectionPool leaks registered drivers
> ---
>
> Key: NIFI-8429
> URL: https://issues.apache.org/jira/browse/NIFI-8429
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Extensions
>Reporter: Peter Turcsanyi
>Assignee: Simon Bence
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> {{DBCPConnectionPool}} executes the following steps when it gets enabled: 
> (https://github.com/apache/nifi/blob/f0611f31da6b643e9ed4bbf2c98faf6c44e29ba6/nifi-nar-bundles/nifi-standard-services/nifi-dbcp-service-bundle/nifi-dbcp-service/src/main/java/org/apache/nifi/dbcp/DBCPConnectionPool.java#L473-L502)
> - creates a custom class loader
> - loads the driver's class via {{Class.forName()}} using the class loader 
> created in the previous step => the driver will be registered in 
> DriverManager via the driver's static initialiser (1st registration)
> - wraps the driver into {{DriverShim}} and registers it in DriverManager => 
> 2nd registration
> - passes the driver's class name and the class loader to {{commons-dbcp2}}'s 
> {{BasicDataSource}} which in the end instantiates the driver directly and 
> uses that instance in effect (not the registered ones)
> The registered drivers will never get removed/deregistered from DriverManager 
> (each OnEnabled leaks 2 instances). Unused drivers can also hold other 
> resources (like threads in case of Oracle driver 
> https://support.oracle.com/knowledge/Middleware/1901449_1.html) which can 
> lead to further leaking.  
> Suggested solution:
> - {{PropertyDescriptor.dynamicallyModifiesClassPath(true)}} could be used 
> instead of the custom class loader
> - {{@RequiresInstanceClassLoading}} could be used to load the driver and the 
> controller service code in the same class loader (which had been the intended 
> purpose of {{DriverShim}} originally)
> - the registered driver could be passed to {{BasicDataSource}} for usage (no 
> further instance creation needed)
> This way only one driver instance (per controller service) would be 
> registered and used (until the user changes the driver url on the controller 
> service). This minimises the number of registered drivers and the resource 
> leaking mentioned earlier.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] asfgit closed pull request #5002: NIFI-8430: Close Atlas client in order to free up resources

2021-04-14 Thread GitBox


asfgit closed pull request #5002:
URL: https://github.com/apache/nifi/pull/5002


   


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

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




[jira] [Commented] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8430?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17321317#comment-17321317
 ] 

ASF subversion and git services commented on NIFI-8430:
---

Commit 2fb05cd8dc6b71d1808cc7447ce085a8e7ab8236 in nifi's branch 
refs/heads/main from Peter Turcsanyi
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=2fb05cd ]

NIFI-8430: Close Atlas client in order to free up resources

This closes #5002

Signed-off-by: David Handermann 


> ReportLineageToAtlas Truststore Loader Thread Leak
> --
>
> Key: NIFI-8430
> URL: https://issues.apache.org/jira/browse/NIFI-8430
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.13.2
>Reporter: David Handermann
>Assignee: Peter Turcsanyi
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> {{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
> Service following recent changes to trust store configuration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (NIFI-8430) ReportLineageToAtlas Truststore Loader Thread Leak

2021-04-14 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-8430:
---
Fix Version/s: 1.14.0
   Resolution: Fixed
   Status: Resolved  (was: Patch Available)

> ReportLineageToAtlas Truststore Loader Thread Leak
> --
>
> Key: NIFI-8430
> URL: https://issues.apache.org/jira/browse/NIFI-8430
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.13.2
>Reporter: David Handermann
>Assignee: Peter Turcsanyi
>Priority: Major
> Fix For: 1.14.0
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> {{ReportLineageToAtlas}} can leak threads when configured with an SSL Context 
> Service following recent changes to trust store configuration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] asfgit closed pull request #5000: NIFI-8428 - increased actions column width for controller services

2021-04-14 Thread GitBox


asfgit closed pull request #5000:
URL: https://github.com/apache/nifi/pull/5000


   


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

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




[jira] [Updated] (NIFI-8428) UI - Access Policy icon not displaying properly for Controller Services

2021-04-14 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8428?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-8428:
---
Fix Version/s: 1.14.0
   Resolution: Fixed
   Status: Resolved  (was: Patch Available)

> UI - Access Policy icon not displaying properly for Controller Services
> ---
>
> Key: NIFI-8428
> URL: https://issues.apache.org/jira/browse/NIFI-8428
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core UI
>Affects Versions: 1.13.2
>Reporter: Mark Bean
>Assignee: Pierre Villard
>Priority: Major
> Fix For: 1.14.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Due to fixed-width column for icons of a controller service on the process 
> group controller services tab, the Access Policy icon may wrap to a new line 
> in certain cases. Extend the width of this column.
> This is similar to NIFI-7361.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (NIFI-8428) UI - Access Policy icon not displaying properly for Controller Services

2021-04-14 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8428?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17321320#comment-17321320
 ] 

ASF subversion and git services commented on NIFI-8428:
---

Commit 4fb86d79e48781deb45ca78c6d95f060d7d9cd18 in nifi's branch 
refs/heads/main from Pierre Villard
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=4fb86d7 ]

NIFI-8428 - increased actions column width for controller services

This closes #5000

Signed-off-by: David Handermann 


> UI - Access Policy icon not displaying properly for Controller Services
> ---
>
> Key: NIFI-8428
> URL: https://issues.apache.org/jira/browse/NIFI-8428
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core UI
>Affects Versions: 1.13.2
>Reporter: Mark Bean
>Assignee: Pierre Villard
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Due to fixed-width column for icons of a controller service on the process 
> group controller services tab, the Access Policy icon may wrap to a new line 
> in certain cases. Extend the width of this column.
> This is similar to NIFI-7361.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] asfgit closed pull request #4984: NIFI-8409 - ConsumeMQTT Processor Broker URI Expression Language Support

2021-04-14 Thread GitBox


asfgit closed pull request #4984:
URL: https://github.com/apache/nifi/pull/4984


   


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

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




[jira] [Updated] (NIFI-8409) ConsumeMQTT Processor Broker URI Expression Language Support

2021-04-14 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-8409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-8409:
---
Fix Version/s: 1.14.0
   Resolution: Fixed
   Status: Resolved  (was: Patch Available)

> ConsumeMQTT Processor Broker URI Expression Language Support
> 
>
> Key: NIFI-8409
> URL: https://issues.apache.org/jira/browse/NIFI-8409
> Project: Apache NiFi
>  Issue Type: Improvement
>  Components: Extensions
>Reporter: YILDIRAY KABAK
>Assignee: Pierre Villard
>Priority: Major
> Fix For: 1.14.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Dear all,
>  I use the Nifi from the docker container and need to pass the “Broker URI” 
> value from environment variable. For this purpose, I initialize the docker 
> container with “MQTT_URL=tcp://localhost:1883” environment variable and 
> reference it from the process configuration. 
> However, in this case, I receive “Broker URI is invalid because it is not 
> valid URI syntax” notification. When I investigated more, I realized that 
> “Expression language scope: Not Supported” for this property. I will truly 
> appreciate, if you enable expression language for this property. 
> (I think, 
> ".expressionLanguageSupported(ExpressionLanguageScope.VARIABLE_REGISTRY)" 
> statement  need to be added to "PROP_BROKER_URI" property in 
> org.apache.nifi.processors.mqtt.common.AbstractMQTTProcessor)
>  
> Kind regard,



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (NIFI-8409) ConsumeMQTT Processor Broker URI Expression Language Support

2021-04-14 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-8409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17321321#comment-17321321
 ] 

ASF subversion and git services commented on NIFI-8409:
---

Commit 0f8789b8b07df40336386b2831721f1e0c4a497b in nifi's branch 
refs/heads/main from Pierre Villard
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=0f8789b ]

NIFI-8409 - ConsumeMQTT Processor Broker URI and Username Expression Language

This closes #4984

Signed-off-by: David Handermann 


> ConsumeMQTT Processor Broker URI Expression Language Support
> 
>
> Key: NIFI-8409
> URL: https://issues.apache.org/jira/browse/NIFI-8409
> Project: Apache NiFi
>  Issue Type: Improvement
>  Components: Extensions
>Reporter: YILDIRAY KABAK
>Assignee: Pierre Villard
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Dear all,
>  I use the Nifi from the docker container and need to pass the “Broker URI” 
> value from environment variable. For this purpose, I initialize the docker 
> container with “MQTT_URL=tcp://localhost:1883” environment variable and 
> reference it from the process configuration. 
> However, in this case, I receive “Broker URI is invalid because it is not 
> valid URI syntax” notification. When I investigated more, I realized that 
> “Expression language scope: Not Supported” for this property. I will truly 
> appreciate, if you enable expression language for this property. 
> (I think, 
> ".expressionLanguageSupported(ExpressionLanguageScope.VARIABLE_REGISTRY)" 
> statement  need to be added to "PROP_BROKER_URI" property in 
> org.apache.nifi.processors.mqtt.common.AbstractMQTTProcessor)
>  
> Kind regard,



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [nifi] gresockj commented on pull request #4986: NIFI-8403: Generating Self-signed cert on startup when applicable

2021-04-14 Thread GitBox


gresockj commented on pull request #4986:
URL: https://github.com/apache/nifi/pull/4986#issuecomment-819835750


   I'll be working on resolving the Windows-related test failures soon.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4641: NIFI-6394 - Ability to export contents of a List Queue

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4641:
URL: https://github.com/apache/nifi/pull/4641#issuecomment-819929640


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4601: NIFI-7917 Upgrade avro to 1.10 in nifi-nar-bundles/nifi-standard-serv…

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4601:
URL: https://github.com/apache/nifi/pull/4601#issuecomment-819929666


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4646: NIFI-6047 Add DeduplicateRecords (combines 6047 and 6014)

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4646:
URL: https://github.com/apache/nifi/pull/4646#issuecomment-819929633


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4639: Update PutFile.java: fix path traversal vulnerability

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4639:
URL: https://github.com/apache/nifi/pull/4639#issuecomment-819929645


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4589: NIFI-7728: FetchS3Object sends a flowfile to failure relationship if the given bucket or object key is empty

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4589:
URL: https://github.com/apache/nifi/pull/4589#issuecomment-819929676


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4670: NIFI-7673 Standalone diagnosis mode verifies independent node

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4670:
URL: https://github.com/apache/nifi/pull/4670#issuecomment-819929625


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4676: NIFI-8016: Support dynamic properties set on the DataSource in Hive connection pools

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4676:
URL: https://github.com/apache/nifi/pull/4676#issuecomment-819929617


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4637: NIFI-5535: NIFI-4713: Change metric tagging in DataDogReportingTask

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4637:
URL: https://github.com/apache/nifi/pull/4637#issuecomment-819929659


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4681: NIFI-8035: added userGroupsFilterExpression to allow per user LDAP filters and LDAP nested groups

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4681:
URL: https://github.com/apache/nifi/pull/4681#issuecomment-819929608


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4588: NIFI-7904: Support for validation query timeout in DBCP,Hive and HBas…

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4588:
URL: https://github.com/apache/nifi/pull/4588#issuecomment-819929690


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4484: NIFI-1207 Create processors to get/put data from XMPP

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4484:
URL: https://github.com/apache/nifi/pull/4484#issuecomment-819929780


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4499: NIFI-7459 change nifi-stateless to use NarClassLoader

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4499:
URL: https://github.com/apache/nifi/pull/4499#issuecomment-819929755


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4497: NIFI-7780: Unify passage of disconnectedNodeAcknowledged param

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4497:
URL: https://github.com/apache/nifi/pull/4497#issuecomment-819929762


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4495: NIFI-7475 JWT processor bundle

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4495:
URL: https://github.com/apache/nifi/pull/4495#issuecomment-819929771


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4501: NIFI-7775 exclude OCR Parser from ExtractMediaMetadata Processor

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4501:
URL: https://github.com/apache/nifi/pull/4501#issuecomment-819929749


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4552: NIFI-7845 Better handling on malformed/empty strings

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4552:
URL: https://github.com/apache/nifi/pull/4552#issuecomment-819929722


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4585: NIFI-7863 - Recursively create directories, in case of a missing parent directory

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4585:
URL: https://github.com/apache/nifi/pull/4585#issuecomment-819929703


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4575: [NIFI-7882] Handle JsonProperties as avro field default

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4575:
URL: https://github.com/apache/nifi/pull/4575#issuecomment-819929715


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4515: NIFI-7728: FetchS3Object sends a flowfile to failure relationship if the given bucket or object key is empty

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4515:
URL: https://github.com/apache/nifi/pull/4515#issuecomment-819929736


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] github-actions[bot] commented on pull request #4479: NIFI-7599 Make noLocal flag on the JMS consumer false

2021-04-14 Thread GitBox


github-actions[bot] commented on pull request #4479:
URL: https://github.com/apache/nifi/pull/4479#issuecomment-819929791


   We're marking this PR as stale due to lack of updates in the past few 
months. If after another couple of weeks the stale label has not been removed 
this PR will be closed. This stale marker and eventual auto close does not 
indicate a judgement of the PR just lack of reviewer bandwidth and helps us 
keep the PR queue more manageable.  If you would like this PR re-opened you can 
do so and a committer can remove the stale tag.  Or you can open a new PR.  Try 
to help review other PRs to increase PR review bandwidth which in turn helps 
yours.


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

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




[GitHub] [nifi] adamfisher commented on pull request #4646: NIFI-6047 Add DeduplicateRecords (combines 6047 and 6014)

2021-04-14 Thread GitBox


adamfisher commented on pull request #4646:
URL: https://github.com/apache/nifi/pull/4646#issuecomment-819955632


   I would prefer not to see this go away. I put a lot of time into making it 
generic and robust. Really I just ran into problems near the end when I had to 
get it merged in properly and Mike is the git ninja. I thought this was almost 
across the finish line?


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

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




[GitHub] [nifi] themanifold commented on pull request #4552: NIFI-7845 Better handling on malformed/empty strings

2021-04-14 Thread GitBox


themanifold commented on pull request #4552:
URL: https://github.com/apache/nifi/pull/4552#issuecomment-820142372


   Please can someone review/merge this? @turcsanyip 


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

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