Commit Graph

884 Commits

Author SHA1 Message Date
Bryan Bende 556f309df0
NIFI-3520 Refactoring instance class loading
- Fixing FlowController to use appropriate class loader when instantiating processor
- Updating ExtensionManager to leverage new flag in MANIFEST from NAR plugin
- Adding ReloadComponent interface and refactoring instance class loading to use it
- Fixing FetchHDFS issue with TDE by using ugi.doAs
- Refactoring nifi-nar-utils so that ExtensionManager only lives in nifi-framework
- Caching temp components found during service loader in ExtensionManager
- Updating authorizables, docs, and fingerprinting to use the cached components
- Introducing a flag on @RequiresInstanceClassLoading to indicate if ancestor resources should be cloned
- Updating developer guide regarding cloneAncestorResources flag
- This closes #1635
2017-04-06 13:51:08 -04:00
Matt Gilman f5f54c468c
NIFI-3664: - Updating the unmarshalling to consider the current date when parsing the time.
This closes #1647.

Signed-off-by: Bryan Bende <bbende@apache.org>
2017-04-05 13:22:35 -04:00
Matt Gilman a565484ddd
NIFI-2940: - Allowing access to configuration actions through the Controller when the underlying component has been removed.
This closes #1648.

Signed-off-by: Bryan Bende <bbende@apache.org>
2017-04-04 17:40:09 -04:00
Koji Kawamura 5e62b4ae72 NIFI-3668: Fix purging expired replicate requests.
This closes #1646.

Newly created async response is added before checking map size nor
purging expired ones. If there are already 100 remaining requests,
the added request will not be executed nor removed.
2017-04-03 09:50:47 -04:00
joewitt 6a64b3cd9c NIFI-3440 This closes #1638. fixing tests not written for windows to not run on windows 2017-03-31 01:59:35 -04:00
Matt Gilman 282e1a7b1a NIFI-3421: This closes #1620.
- On contextDestroyed, referencing beans created during contextInitialized to prevent successive attempts to create a bean if that bean failed to be created initially.

Signed-off-by: joewitt <joewitt@apache.org>
2017-03-30 15:14:41 -04:00
Matt Gilman e203535163 NIFI-3272 This closes #1616.
- Updating the garbage collection column to use a icon with tooltip to relay all garbage collections.
2017-03-30 14:55:17 -04:00
Mark Payne 3aa1db6ee5 NIFI-3636: Lazily copy FlowFile Attributes Hash Map instead of doing so eagerly.
Signed-off-by: Matt Burgess <mattyb149@apache.org>

NIFI-3257: Added additional logging regarding timing information when replicating requests across cluster in order to glean insight as to what is taking so long when replicating some requests

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

NIFI-3649: Buffer node responses when replicating HTTP Requests up to a maximum buffer size

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

NIFI-3636: Added unit test to ensure that flowfile attribute maps are copied when appropriate

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

NIFI-3636: Removed patch file that should not have been in commit

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

This closes #1612
2017-03-30 09:53:39 -04:00
Andre F de Miranda a7bf683a0d
NIFI-79 - Introduces the ability to set Bulletin Level to NONE 2017-03-30 08:54:24 -04:00
James Wing f9b5bcf7bb NIFI-2907 Fix Flow Schema Validation Errors
This closes #1587.
2017-03-28 10:53:16 -04:00
Matt Gilman 4432958a65
NIFI-3643: - Addressing incorrect capitalization in VersionInfoDTO in NiFiVersion.
This closes #1626.

Signed-off-by: Bryan Bende <bbende@apache.org>
2017-03-27 16:44:21 -04:00
Matt Gilman f15e0d8e1e
NIFI-3380: - Addressing issues with paths in generated documentation.
This closes #1627.

Signed-off-by: Bryan Bende <bbende@apache.org>
2017-03-27 16:43:15 -04:00
Andre F de Miranda a26689318d
NIFI-814 - Introduce hidden header with name of Processor to allow those arriving to site via direct reference to know the name of the processor
This closes #1624.

Signed-off-by: Aldrin Piri <aldrin@apache.org>
2017-03-26 11:41:15 -04:00
Bryan Bende f0a1c14f02
NIFI-3380 Fixing parent pom of nifi-standard-prioritizers to point to correct parent after moving under nifi-framework 2017-03-25 11:13:58 -04:00
Bryan Bende d90cf846b9 NIFI-3380 Bumping NAR plugin to 1.2.0-SNAPSHOT development to leverage changes from master, adding buildnumber-maven-plugin to nifi-nar-bundles to properly set build info in MANIFEST of NARs
- Refactoring NarDetails to include all info from MANIFEST
- Adding the concept of a Bundle and refactoring NarClassLoaders to pass Bundles to ExtensionManager
- Adding logic to fail start-up when multiple NARs with same coordinates exist, moving Bundle classes to framework API
- Refactoring bundle API to classes and creating BundleCoordinate
- Updating FlowController to use BundleCoordinate

- Updating the UI and DTO model to support showing bundle details that loaded an extension type.
- Adding bundle details for processor canvas node, processor dialogs, controller service dialogs, and reporting task dialogs.
- Updating the formating of the bundle coordinates.
- Addressing text overflow in the configuration/details dialog.
- Fixing self referencing functions.
- Updating extension UI mapping to incorporate bundle coordinates.
- Discovering custom UIs through the supplied bundles.
- Adding verification methods for creating extensions through the rest api.
- Only returning extensions that are common amongst all nodes.
- Rendering the ghost processors using a dotted border.
- Adding bundle details to the flow.xml.
- Loading NiFi build and version details from the framework NAR.
- Removing properties for build and version details.
- Wiring together front end and back end changes.
- Including bundle coordinates in the component data model.
- Wiring together component data model and flow.xml.
- Addressing issue when resolve unvesioned dependent NARs.

Updating unit tests to pass based on framework changes
- Fixing logging of extension types during start up

- Allowing the application to start if there is a compatible bundle found. - Reporting missing bundle when the a compatible bundle is not found. - Fixing table height in new component dialogs.

Fixing chechstyle error and increasing test timeout for TestStandardControllerServiceProvider
- Adding ability to change processor type at runtime
- Adding backend code to change type for controller services

- Cleaning up instance classloaders for temp components.
- Creating a dialog for changing the version of a component.
- Updating the formatting of the component type and bundle throughout.
- Updating the new component dialogs to support selecting source group.
- Cleaning up new component dialogs.
- Cleaning up documentation in the cluster node endpoint.

Adding missing include in nifi-web-ui pom compressor plugin
- Refactoring so ConfigurableComponent provides getLogger() and so the nodes provide the ConfigurableComponent
- Creating LoggableComponent to pass around the component, logger, and coordinate with in the framework

- Finishing clean up following rebase.

Calling lifecycle methods for add and remove when changing versions of a component
- Introducing verifyCanUpdateBundle(coordinate) to ConfiguredComponent, and adding unit tests

- Ensuring documentation is available for all components. Including those of the same type that are loaded from different bundles.

Adding lookup from ClassLoader to Bundle, adding fix for instance class loading to include all parent NARs, and adding additional unit tests for FlowController
- Adding validation to ensure referenced controller services implement the required API
- Fixing template instantiation to look up compatible bundle

- Requiring services/reporting tasks to be disabled/stopped.
- Only supporting a change version option when the item has multiple versions available.
- Limiting the possible new controller services to the applicable API version.
- Showing the implemented API versions for Controller Services.
- Updating the property descriptor tooltip to indicate the required service requirements.
- Introducing version based sorting in the new component dialog, change version dialog, and new controller service dialog.
- Addressing remainder of the issues from recent rebase.

Ensuring bundles have been added to the flow before proposing a flow, and incorporating bundle information into flow fingerprinting
- Refactoring the way missing bundles work to retain the desired bundle if available
- Fixing logger.isDebugEnabled to be logger.isTraceEnabled

- Auditing when user changes the bundle. - Ensuring bundle details are present in templates.

Moving standard prioritizers to framework NAR and refactoring ExtensionManager logic to handle cases where an extension is in a JAR directly in the lib directory

- Ensuring all nodes attempt to instantiate the same template instance when the available bundles may differ. - Fixing the auditing of copy/paste and template instantiation. - Running addtional verification methods when running standalone.

Refactoring controller service invocation handler to allow updating the node used by the invocation handler
- Ensuring the bundles in a proposed flow are compatible with the current instance when the current instance has no flow is going to accept the proposed flow
- Merging whether multiple versions of the component are available
- Setting NAR plugin back to current released version
- Cleaning up DocGenerator to not process multiple times

Addressing incorrect usage of nf.Common. - Using formatType in the new component type dialogs.

Improving error messages when looking for bundles

Addressing comments from PR. - Fixing references to global nf namespace. - Fixing injection of nfProcessGroupConfiguration in nfComponentVersion. - Fixing web api integration tests.

Not rendering unversioned in help documentation. - Ensuring the isExtentionMissing flag is correct after changing the component type.

Adding synchronization in node classes to ensure changing component can't occur when component is running, introducing MissingBundleException for better reporting when a node can't join cluster due to a missing bundle, and bumping NAR plugin to released version 1.2.0

Adding concept of missing components to fingerprinting to ensure nodes agree on missing components when joining a cluster

NIFI-3380: NIFI-3520: - Fixing hive nar dependency. - Marking DBCPService as provided. - Skipping services that require instance classloading and are cobundled with their service API. - Skipping components that require instance classloading and reference service APIs that are cobundled. - Addressing UI issues in the new component dialogs when re-opening with a filter applied.

Fixing checkstyles issue and adding back assume checks to distributed cache server test

Ensuring new component types are sorted correctly when shown initially.

This closes #1585.
2017-03-24 11:06:44 -04:00
Scott Aslan a90a770244
[NIFI-3035] add deep linking URL to canvas components and PGs. This closes #1559 2017-03-22 14:23:02 -04:00
Scott Aslan 40acd4a6e1
[NIFI-2697] revert transmission switch toggle on failed update request. This closes #1600 2017-03-21 15:17:02 -04:00
Puspendu Banerjee 552148e9e7 NIFI-3579: Incorporated Review comments. This closes #1602. 2017-03-20 10:15:24 -04:00
Matt Gilman 47c6718fe2 NIFI-3615:
- Removing hidden control characters.

This closes #1599

Signed-off-by: Scott Aslan <scottyaslan@gmail.com>
2017-03-17 11:46:25 -04:00
Matt Gilman 768e89b579 NIFI-3246:
- Preventing the editing of controller services that are defined in an ancestor process group.
- Adding a go to link for users to easily navigate to where services are actually defined.

This closes #1594

Signed-off-by: Scott Aslan <scottyaslan@gmail.com>
2017-03-14 14:15:14 -04:00
Puspendu Banerjee 78382c66bc NIFI-3579 Fix for Windows FileStore issue
Signed-off-by: Mike Moser <mosermw@apache.org>

This closes #1580
2017-03-14 13:58:06 -04:00
Matt Gilman 9d4239be1e NIFI-3245:
- Adding notes to the controller service tables to better define their availability.
- Clarifying support of Safari.

This closes #1593

Signed-off-by: Scott Aslan <scottyaslan@gmail.com>
2017-03-13 13:48:11 -04:00
Matt Gilman 620c572703 NIFI-3244:
- Updating Controller Service scope header.
- Rendering the name of the parent when possible.
- Fixing the check if the parent Process Group is write-able when the parent is selected on the current canvas.

This closes #1590

Signed-off-by: Scott Aslan <scottyaslan@gmail.com>
2017-03-13 12:35:46 -04:00
Matt Gilman 9bb31a70d9 NIFI-3243:
- Rendering the selected Process Group in the header if possible.

This closes #1591

Signed-off-by: Scott Aslan <scottyaslan@gmail.com>
2017-03-13 12:18:22 -04:00
Matt Gilman 977aa6919c
NIFI-3575:
- Verify that when moving a snippet, we do not attempt to move a process group into itself.
- Update the UI to ensure a subsequent move event cannot be triggered while a previous move event is still in progress.

This closes #1582.

Signed-off-by: Andy LoPresto <alopresto@apache.org>
2017-03-10 17:56:57 -08:00
Aldrin Piri c9097e7db3
NIFI-3541 Add copying of local network interface for DtoFactory RPG copy. This closes #1574 2017-03-09 08:23:28 -05:00
James Wing 3c862a1515
NIFI-3334 Fix Update Run Duration. This closes #1572 2017-03-09 08:13:46 -05:00
Andy LoPresto 7f6373239f
NIFI-3313 Added explicit Java runtime argument to default bootstrap.conf to avoid blocking on VM deployment.
This closes #1579.

Signed-off-by: Andy LoPresto <alopresto@apache.org>
2017-03-08 19:24:43 -08:00
Koji Kawamura 27afd2e0cc NIFI-3163: Add new RPG settings to fingerprint
- Added timeout, yieldPeriod, transportProtocol, proxyHost, proxyPort,
  proxyUser and proxyPassword

- Removed unused fingerprint methods

FingerprintFactory has two types of fingerprinting method, from XML
elements and from DTO. However, the ones from DTO are not used by
anywhere. IDE didn't report those private methods unused because
addProcessGroupFingerprint and addSnippetFingerprint call each other,
but those are not used from outside actuallly.

This commit removes those private methods to keep the class clean to
avoid unnecessary code maintenance and tests.

This closes #1332.
2017-03-08 17:31:22 -05:00
Andy LoPresto 1376e5fbd0
NIFI-3483 Added import statement to resolve failing tests.
Signed-off-by: Aldrin Piri <aldrin@apache.org>
2017-03-07 20:07:59 -05:00
Pierre Villard 01979aebec
NIFI-3483 - fixed one unit test relying on locale
This closes #1566.

Signed-off-by: Aldrin Piri <aldrin@apache.org>
2017-03-07 16:41:45 -05:00
Matt Gilman 16bde02ed0
NIFI-3541: - Allowing the user to specify the network interface to send/receive data for a Remote Process Group.
This closes #1550.

Signed-off-by: Mark Payne <markap14@hotmail.com>
Signed-off-by: Aldrin Piri <aldrin@apache.org>
2017-03-06 10:38:15 -05:00
Mark Payne 9e68f02f1f NIFI-3541: Add local network interface capability to site-to-site client and remote group and ports 2017-03-06 10:36:30 -05:00
Scott Aslan 9f669aa944
[NIFI-3550] inject nf.ConnectionConfiguration into the nf.Cannection module during nf.Graph init. This closes #1560 2017-03-03 09:38:29 -05:00
Mark Payne 4ed64e7561
NIFI-3548: Fixed bug that caused failed requests to not get removed from 'request map' and also results in that preventing the purging logic, which would then unintentially throw exceptions. This closes #1555 2017-03-03 09:13:28 -05:00
Scott Aslan c3dbbb845f
[NIFI-3038] Update cluster summary dialog layout. This closes #1534 2017-02-28 09:47:47 -05:00
Scott Aslan 1978c986b5
[NIFI-3465] change CS and RT warning tooltip viewports to a visible and connected DOM element. This closes #1545 2017-02-27 13:18:14 -05:00
Scott Aslan d98426cc3d
[NIFI-2941] allow users to click checkbox labels to toggle the checkbox. This closes #1538 2017-02-27 09:57:43 -05:00
Scott Aslan a76641b252
[NIFI-2891] persist selected tab for connection configuration dialog, except for when creating a new connection the dialog will open with the details tab visible since users will need to select a connection relationship. This closes #1535 2017-02-27 09:21:55 -05:00
Scott Aslan fba17159a9
[NIFI-3358] remove duplicate calls to nfProcessGroupConfiguration.showConfiguration(). This closes #1540 2017-02-24 08:05:34 -05:00
Scott Aslan 2c374bafaa
[NIFI-3358] update naming conventions to avoid conflicts. This closes #1533 2017-02-23 09:14:33 -05:00
Mark Payne 64379d2007 NIFI-3522: When creating a clone of a FlowFile, ensure that we properly set the 'updated attributes' on the RepositoryRecord to all attributes on the FlowFile itself, the same way we do when calling create(FlowFile)
This closes #1532
2017-02-22 17:16:14 -05:00
Mark Payne 96ed405d70 NIFI-3356: Initial implementation of writeahead provenance repository
- The idea behind NIFI-3356 was to improve the efficiency and throughput of the Provenance Repository, as it is often the bottleneck. While testing the newly designed repository,
  a handful of other, fairly minor, changes were made to improve efficiency as well, as these came to light when testing the new repository:

- Use a BufferedOutputStream within StandardProcessSession (via a ClaimCache abstraction) in order to avoid continually writing to FileOutputStream when writing many small FlowFiles
- Updated threading model of MinimalLockingWriteAheadLog - now performs serialization outside of lock and writes to a 'synchronized' OutputStream
- Change minimum scheduling period for components from 30 microseconds to 1 nanosecond. ScheduledExecutor is very inconsistent with timing of task scheduling. With the bored.yield.duration
  now present, this value doesn't need to be set to 30 microseconds. This was originally done to avoid processors that had no work from dominating the CPU. However, now that we will yield
  when processors have no work, this results in slowing down processors that are able to perform work.
- Allow nifi.properties to specify multiple directories for FlowFile Repository
- If backpressure is engaged while running a batch of sessions, then stop batch processing earlier. This helps FlowFiles to move through the system much more smoothly instead of the
  herky-jerky queuing that we previously saw at very high rates of FlowFiles.
- Added NiFi PID to log message when starting nifi. This was simply an update to the log message that provides helpful information.

NIFI-3356: Fixed bug in ContentClaimWriteCache that resulted in data corruption and fixed bug in RepositoryConfiguration that threw exception if cache warm duration was set to empty string

NIFI-3356: Fixed NPE

NIFI-3356: Added debug-level performance monitoring

NIFI-3356: Updates to unit tests that failed after rebasing against master

NIFI-3356: Incorporated PR review feedback

NIFI-3356: Fixed bug where we would delete index directories that are still in use; also added additional debug logging and a simple util class that can be used to textualize provenance event files - useful in debugging

This closes #1493
2017-02-22 12:40:06 -05:00
Koji Kawamura 8d467f3d1f
NIFI-3505: Fix nifi.sh restart
The 'exec' command added by NIFI-2689 affected restart behavior
negatively as 'exec' command will not execute subsequent commands in the
shell script.
This commit changes 'exec' is added only when 'run' is specified.

This closes #1523.

Signed-off-by: Aldrin Piri <aldrin@apache.org>
2017-02-22 10:47:39 -05:00
Scott Aslan 364efa96cc
[NIFI-3501] Upgrade D3 to 3.5.17 and allow npm to pull it down at build time. This closes #1519 2017-02-21 10:17:34 -05:00
Aldrin Piri 4f49095d75 NIFI-3294 Adjusting nifi.sh to invoke nifi-env.sh when running as another user such that properties are preserved across environments.
This closes #1405.

Signed-off-by: Aldrin Piri <aldrin@apache.org>
Signed-off-by: ijokarumawak <ijokarumawak@apache.org>
2017-02-20 11:04:11 +09:00
Scott Aslan 19302263c3
[NIFI-3181] add operate palette actions to context menu. This closes #1516 2017-02-17 15:40:23 -05:00
Scott Aslan d9828c240b
[NIFI-3360] resolve clashing variable name for connection and nf.Connection. This closes #1506 2017-02-16 15:54:00 -05:00
Koji Kawamura 1eb98aefee NIFI-3373: Add nifi.flow.configuration.archive.max.count
- Add 'nifi.flow.configuration.archive.max.count' in nifi.properties
- Change default archive limit so that it uses archive max time(30 days)
  and storage (500MB) if no limitation is specified
- Simplified logic to delete old archives

This closes #1460.

Signed-off-by: Koji Kawamura <ijokarumawak@apache.org>
2017-02-16 14:19:39 +09:00
Aldrin Piri 76fcf5def1 NIFI-3385 - This closes #1440. Updating copyright statements to reflect the new year. 2017-02-16 00:10:02 -05:00