183 Commits

Author SHA1 Message Date
Mark Payne
9ca8bfc752
NIFI-12232 Corrected Group Component ID Handling for Clustered Flows
Ensured that if a Process Group doesn't have a Versioned Component ID we use the ComponentIdLookup to create one based on its Instance ID in the same way that is done when serializing the flow; this ensures matching ID's when we synchronize flows across the cluster. Also included some code cleanup around failure handling on startup

This closes #8432

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-02-20 15:38:08 -06:00
exceptionfactory
6612077b42
NIFI-12680 Fixed JAR for DefaultedDynamicClassPathModificationIT
- Adjusted test flow to find available version of commons-lang3 instead of depending on a specific version from the default property value

This closes #8307

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-02-09 08:43:09 -06:00
Pierre Villard
65c33d08aa
NIFI-12662-RC1 prepare for next development iteration 2024-01-25 16:18:10 +04:00
Pierre Villard
6ecc398d3f
NIFI-12662-RC1 prepare release nifi-1.25.0-RC1 2024-01-25 16:17:58 +04:00
Pierre Villard
7fedb49a9a
NIFI-12362-RC5 prepare for next development iteration 2023-11-23 11:03:53 +01:00
Pierre Villard
5241f43482
NIFI-12362-RC5 prepare release nifi-1.24.0-RC5 2023-11-23 11:03:47 +01:00
exceptionfactory
75351b7067
NIFI-12266 Added Standard Shared NAR and BOM
- Added nifi-standard-shared-nar with common dependencies
- Added nifi-standard-shared-bom with provided scope for parent module references

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #8008.
2023-11-13 09:27:59 +01:00
exceptionfactory
6c5a2fbcde
NIFI-12297 Standardized File Path resolution in Persistence Providers (#7975)
(cherry picked from commit c706877147d89b7947f48cea68b3577bbfe3798d)
2023-11-03 14:12:26 -05:00
exceptionfactory
f37b77f64c
NIFI-12287 Standardized skipping Source and Javadoc for NAR modules
- Added nar-packaging and war-packaging profiles to root Maven configuration
- Removed individual properties from NAR module configurations

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #7947.

(cherry picked from commit 2366132e92951a8fc27097c777d3104a1c396f7b)
2023-10-31 14:35:54 -05:00
exceptionfactory
1a2d769e82
NIFI-12219 Added Xodus Flow History Storage with Migration (#7885)
- Added EntityStoreAuditService implementation using JetBrains Xodus libraries
- Added FlowConfigurationHistoryMigrator for checking and migrating H2 databases containing Flow Configuration History to Xodus persistent store implementation
2023-10-18 10:48:05 -04:00
Pierre Villard
18ab14b148
NIFI-12103 Replaced deprecated usage of new URL(String)
This closes #7771

Signed-off-by: David Handermann <exceptionfactory@apache.org>

(cherry picked from commit 2aca08910c4e06fff2c98d3794d9b5a3cd427988)
2023-09-23 10:35:14 -05:00
exceptionfactory
9cd720ee20 NIFI-12001 Refactored CertificateUtils to separate modules
- Added nifi-security-cert for reusable components without dependencies
- Added nifi-security-cert-builder for certificate generation

NIFI-12001: Changes related to backporting
Signed-off-by: Matt Burgess <mattyb149@apache.org>
2023-08-30 15:06:37 -04:00
Robert Kalmar
e15a16a7e6
NIFI-11963 Added null check in system test for instance cache method
- Timing issues in system integration tests could sometimes fail with a NullPointerException when calling the poison method multiple times

This closes #7618

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 25d775b9651dc5a69120e0bed7545daa18281f3d)
2023-08-22 13:58:31 -05:00
Mark Payne
af85aa976a
NIFI-11971: Ensure that if we do not write any bytes to a file after calling ProcessSession.write() that we set content claim's length to 0 when closing OutputStream; otherwise it remains -1, which causes issues, since the length will later be added to the offset to determine the position in the ste stream
This closes #7629

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 5e2a10c32834973ba2837c3bdf5963aab2aa92bc)
2023-08-21 08:26:23 -05:00
exceptionfactory
4c369cc0df
NIFI-11875 Corrected Commons Lang3 version in DefaultedDynamicallyModifyClasspath
Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 3a1bc44b88053c27eda196b626509da40dba9188)
2023-08-01 16:05:56 -05:00
exceptionfactory
27a690a30a NIFI-11832-RC3 prepare for next development iteration 2023-07-25 14:03:12 -05:00
exceptionfactory
b7792f03b7 NIFI-11832-RC3 prepare release nifi-1.23.0-RC3 2023-07-25 14:03:11 -05:00
Mark Payne
eb09df672b NIFI-11783: Fixed a bug in which a FlowFile split into multiple and then removed did not properly handle retries when one of the outputs was retried.
Signed-off-by: Matt Burgess <mattyb149@apache.org>
2023-07-19 15:50:35 -04:00
Mark Payne
0ee43773f4
NIFI-11746 Fixed FlowSynchronizationIT.testComponentsRecreatedOnRestart()
- Ensure that testComponentsRecreatedOnRestart only counts components in its own group

This closes #7466

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 96be7377b3f678271f13a9085d63e223670ca522)
2023-07-10 13:01:48 -05:00
exceptionfactory
5a378a5dbb
NIFI-11746 Corrected unpackPythonExtensions reference in InstanceConfiguration
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-06-23 16:52:08 -05:00
Mark Payne
ad0d2cc44c
NIFI-11746: Refactored instance caching for system tests
Also changed some properties around so that we can have both a clustered and a standalone instance running at the same time.

This closes #7427

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 5d3443c1915ae7231ade4162437dc1debf9c42e7)
2023-06-23 16:22:37 -05:00
Mark Payne
a47f5b8045
NIFI-11737: Improved performance of FlowSynchronizationIT
- FlowSynchronizationIT no longer requires isDestroyEnvironmentAfterEachTest to return true

This closes #7420

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 9709bd6fb749e1a1c7bc52076e69d96f5235802a)
2023-06-21 17:14:34 -05:00
exceptionfactory
0ecd15537e
NIFI-11532 Removed JUnit 4 and Groovy Test from default dependencies
- Removed hamcrest-all from default dependencies
- Added groovy-test to selected modules with Groovy test classes
- Added junit-vintage-engine to selected modules with JUnit 4 test classes
- Corrected references to JUnit 4 assertions in JUnit 5 test classes
- Removed several unnecessary test classes from nifi-socket-utils
- Removed duplicative Registry toolkit test classes
- Removed Kudu integration tests

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes #7233

(cherry picked from commit ca6c7f704164e922e11d72e7c972a50ac46e6b0e)
2023-06-13 15:22:40 -05:00
exceptionfactory
e5474f7d22 NIFI-11679 Refactored EncryptedRepoContentAccessIT Configuration (#7369) 2023-06-13 11:07:09 -04:00
Mark Payne
125e456a64 NIFI-11471: Added a system test to verify controller service enable timeout.
This closes #7242.
2023-06-12 14:51:48 -04:00
Mark Payne
181b287b1d
NIFI-11670 Refactored Content Repo OutputStream to create new Claim per FlowFile
Rather than creating many FlowFiles with the same Content Claim, refactored content repos' OutputStreams and ClaimWriteCache so that a new ContentClaim is created for each FlowFile. This ensures that we have a content claim offset of 0. The poor performance was due to having to use StreamUtils.skip() in conjunction with the CipherInputStream, which would only skip a max of 511 bytes at a time. By using a separate Content Claim per FlowFile, we no longer need to seek after creating the CipherInputStream

This closes #7363

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 702c6350344e4ae4cd31349747e96c1384017ed4)
2023-06-12 10:23:29 -05:00
Joe Witt
f1d5a8c4de
NIFI-11654-RC1 prepare for next development iteration 2023-06-06 12:32:00 -07:00
Joe Witt
71e3ea9f2c
NIFI-11654-RC1 prepare release nifi-1.22.0-RC1 2023-06-06 12:31:58 -07:00
Mark Payne
bd26936f24
NIFI-11591: Added additional logging for DynamicallyModifyClasspath system test
This closes #7312

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 4b7e20740e4777f6e64e69db7b0c597cc0fb7e5e)
2023-05-31 16:24:22 -05:00
Mark Payne
8208aa9536
NIFI-11591 Improved stability of DynamicallyClassPath and AsyncCommitCallback tests
After terminating Processor in DynamicallyModifiedClasspathIT system test, keep trying to empty queue until successful instead of assuming success after the first iteration.

When writing to a replacement file in AsyncCommitCallbackIT, write to a temp file and then rename. This prevents the processor from picking up the file while it's still being written.

This closes #7302

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 9f61b5f957e0389d4929fd7f4e9fd83521bcd4c5)
2023-05-25 19:14:58 -05:00
Mark Payne
336003725a
NIFI-11591 Corrected intermittent system test failures
When waiting for a Processor to stop completely in system tests, also consider any terminated threads. Consider the processor stopped only when all active threads and all terminated threads have gone to 0. Additionally, when stopping all components in a Process Group, wait for the PG to reflect that there are no running components.  Previously, we checked for processor active thread counts. However, this was problematic because the flow that was fetched was not fetched recursively and as a result, processors running in embedded groups were not always stopped when the waitForProcessorsStopped(String groupId) method returned. Finally, removed the step for gathering surefire-reports in failed system tests because it was not working as expected and was unneeded because the tests' logs were already gathered into the diagnostic dump that is uploaded.

Added fix for BatchFlowBetweenGroupsIT. The test would intermittently fail, based on timing. The test assumed that when Input Port in Group B was scheduled to run, it would trigger before FlowFiles in Group A finished processing. The Sleep processor caused a 10 ms delay for each of 5 FlowFiles which gives the Input Port about 50 ms to trigger. If it took longer to trigger the first time, the test failed. Adjusted the Sleep processor to use 2 seconds. So now instead of 50 milliseconds to start, it has 10 seconds. Overall this adds about 30-45 seconds to the run time of the test but ensures more-than-adequate time for the test to run, even on extremely slow hardware

This closes #7289

Signed-off-by: David Handermann <exceptionfactory@apache.org>
(cherry picked from commit 108f841525f98aab8144c0421a1ea5e5cb2a3b3b)
2023-05-24 14:03:57 -05:00
Mark Payne
82a55ebdd4
NIFI-11557: Avoid using the expensive and unnecessary Files.walkFileTree on startup and initialization of Content Repository. Also performed some code cleanup: IntelliJ flagged many warnings in the class, mostly around methods that are no longer used and potential NullPointerExceptions, so those were cleaned up. Additionally, removed the nifi property for max flowfiles per claim - this property was never implemented. It was referenced, but the way in which is was used curiously had nothing to do with what the property was intended to be used for or for how it was documented. Instead, it was used to limit the max number of claims that could remain writable. As a result, it was removed.
NIFI-11557: Added an additional system test and updated github actions to include surefire-report in order to help diagnose problem that occurred in one of the last system-test runs in Github. Could not replicate problem locally
2023-05-23 14:30:59 -04:00
Lehel Boér
ab20a93a90 NIFI-11493: Defaulted dynamically modified classpath fix
This closes #7201.

Co-authored-by: Peter Turcsanyi <turcsanyi@apache.org>
Signed-off-by: Peter Turcsanyi <turcsanyi@apache.org>
2023-05-04 15:43:03 +02:00
Bryan Bende
7cb9de69c4 NIFI-11436 Fix NPE during updateFlow when called from a replace request for a PG that is not under version control (#7167) 2023-04-12 19:24:46 -04:00
Joe Witt
9c27ddcb1c
NIFI-11357-RC2 prepare for next development iteration 2023-04-03 14:40:08 -07:00
Joe Witt
892f822107
NIFI-11357-RC2 prepare release nifi-1.21.0-RC2 2023-04-03 14:40:07 -07:00
Mark Payne
451941aad9
NIFI-11251: Fixed case in which changing Flow Version was improperly attempting to use a Temporary Funnel destination for a connection due to differences in Group ID by instead checking if the destination is reachable; fixed issue in which processors in an inner versioned group were not stopped even though they changed, when a higher-level parent (that was itself under version control) had its version changed. Wrote system tests to verify
- Fixed system tests so that they work properly in Clustered version of RegistryClientIT
- Fixed system test - ensure that we wait for processors to become valid before attempting to start them; also added an additional system test around Controller Services in versioned flows

This closes #7095

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-03-29 08:35:32 -05:00
Mark Payne
d2fdff7b93
NIFI-11333: Do not allow components to be removed while a node is disconnected
This closes #7085

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-03-27 17:44:31 -05:00
Mark Payne
8eeebdb614
NIFI-11290 Run Component Primary Node State changes in background thread
- Ensure that components are notified that primary node has changed in a background thread instead of the Leader Election thread and activate/deactivate the thread in the case of Processors so that they can be viewed in the UI and terminated

- Fixed system tests that would fail intermittently because they did not wait for node disconnection to complete and did not properly switch the client to look at the connected node before checking cluster status

This closes #7052

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2023-03-23 12:21:45 -05:00
Mark Payne
cece57268e
NIFI-11310: Provide appropriate classpath resources to the ReloadComponent when a processor is terminated
NIFI-11310: Fixed META-INF/services file that was mistakenly listing an extra extension point, due to rebase
Signed-off-by: Matthew Burgess <mattyb149@apache.org>
2023-03-21 14:17:17 -04:00
exceptionfactory
e941a30b32
NIFI-11280 Updated system-tests Sensitive Properties Algorithm
- Updated algorithm from PBEWITHMD5AND256BITAES-CBC-OPENSSL to NIFI_PBKDF2_AES_GCM_256

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #7041.
2023-03-14 12:38:44 +01:00
Mark Payne
6b15c2544a
NIFI-11192: Ensure that if ports moved between parent/child group in between flow versions that we can properly handle that. Added system tests to verify.
NIFI-11192: If a failure is encountered when changing the version of a flow from 1 version to another, attempt to rollback the changes instead of just failing with the flow in a bad state
Signed-off-by: Matthew Burgess <mattyb149@apache.org>

This closes #6981
2023-02-22 15:46:11 -05:00
Joe Witt
8300477ed1
NIFI-11103 preparing support/nifi-1.x line for any subsequent feature/maint releases starting with 1.21-snap 2023-02-09 15:40:01 -07:00
Joe Witt
896fdacbbd
NIFI-11103-RC1 prepare for next development iteration 2023-02-06 11:41:41 -07:00
Joe Witt
81296b5b69
NIFI-11103-RC1 prepare release nifi-1.20.0-RC1 2023-02-06 11:41:39 -07:00
exceptionfactory
e264f1fd77
NIFI-11097 This closes #6890. Adjusted RegistryClientIT with unique name for Clients
Signed-off-by: Joe Witt <joewitt@apache.org>
2023-01-26 09:50:35 -07:00
exceptionfactory
972667461b
NIFI-10580 This closes #6867. Upgraded SLF4J from 1.7.36 to 2.0.6
- Upgraded Logback from 1.2.11 to 1.3.5
- Updated Logback DelayingShutdownHook to DefaultShutdownHook
- Disabled Spring Boot Logging System in favor of standard Logback initialization
- Excluded logback-classic from ZooKeeper and other dependencies to avoid conflicts when running tests
- Excluded spring-boot-starter-logging to avoid failures related to Logback 1.2 and Spring Boot 2.7
- Removed ZooKeeperMigratorTest.groovy based on Apache Curator test server usage of Logback 1.2

NIFI-10580 Added logback-core as explicit dependency

- Set logback-core as provided in root configuration
- Added logback-core as compile dependency in assembly configurations

Signed-off-by: Joe Witt <joewitt@apache.org>
2023-01-23 11:38:10 -07:00
Bryan Bende
5c3ca9d537
NIFI-10981 Ensure NarAutoLoader starts after provider retrieves NARs,… (#6785)
- NIFI-10981 Ensure NarAutoLoader starts after provider retrieves NARs, and ensure the auto-loader attempts to process any NARs available before starting to watch for new files
- Add system test with NAR Provider that copies NARs from a local directory and verifies the NARs were loaded and linked correctly
- Exclude new assembly from CI test-compile
2022-12-16 11:30:37 -05:00
Joe Witt
75e7c9e47c
NIFI-10854-RC1 prepare for next development iteration 2022-11-22 19:22:47 -07:00
Joe Witt
ec87bf93ad
NIFI-10854-RC1 prepare release nifi-1.19.0-RC1 2022-11-22 19:22:45 -07:00