NIFI-6970 add DistributeRecord processor#3984
NIFI-6970 add DistributeRecord processor#3984IlyaKovalev wants to merge 24 commits intoapache:masterfrom
Conversation
9355dcb to
4e71d32
Compare
|
@IlyaKovalev I had a couple of quick questions looking at this:
|
|
1 Fixed, also remove ORIGINAL relationship (it's excessively i think) |
80fe62c to
08d9046
Compare
|
Hello. This is an interesting PR/good idea. I wonder though if this should just be a partitioning strategy in PartitionRecord. If we keep it separate like this we might want to go with a more specific name than DistributeRecord as we might want different distribution options and this one seems to be pretty specific to weighted distribution using one or more hashing functions. Maybe then the name should be 'WeightedRecordDistribution' In any case how about squashing the commits and rebasing to master and pushing the forced PR. This will let the new CI processes run against the PR. |
eb7d5e9 to
b9a583f
Compare
|
Hello. |
NIFI-6970 add DistributeRecord to the meta-inf, remove ORIGINAL relationship NIFI-6970 fix bug NIFI-6970 rename processor NIFI-6970 add 'replacement value' property and add tests
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com> This closes apache#4302.
… docs Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com> This closes apache#4293.
…scription Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com> This closes apache#4294.
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com> This closes apache#4292.
This closes apache#3734 Signed-off-by: Mike Thomsen <mthomsen@apache.org>
…e call the onFailed or onCompleted function. If the result is failed, return true and do sth NIFI-7403:Add an extension point to adjust the result, if the result is failed then process onFailed function NIFI-7403:Implement the AdjustFailed Function, if PutSQL set the SUPPORT_TRANSACTIONS true, then check whether the result contains REL_RETRY or REL_FAILURE.If it contains that, reroute the result and return true. NIFI-7403: fix reroute logic in AdjustFailed function NIFI-7403:Add and modify some unit test for PutSQL's SUPPORT_TRANSACTIONS property NIFI-7403:Update for PR recheck NIFI-7403:Add documentation on the Support Fragmented Transactions property to indicate the transactions rollback behavior NIFI-7403: Fix Checkstyle issue Signed-off-by: Matthew Burgess <mattyb149@apache.org> This closes apache#4266
| .displayName("Hash Function") | ||
| .required(true) | ||
| .description("Hash algorithm for keys hashing") | ||
| .allowableValues(MURMURHASH_32) |
There was a problem hiding this comment.
I'm curious what this hash function is, and why there is a configurable property for it if there is only one allowable value.
There was a problem hiding this comment.
This is name of hash function for distribution. I suggest there will be several hash functions in future (MD5 for example). After keys hashing processor will decide where record should route (by division without remainder)
There was a problem hiding this comment.
Is it possible to add the other hashing algorithms now?
…the flowfile NIFI-7477 Improving description and unit test now verifies attribute content NIFI-7477: Fixed checkstyle errors Signed-off-by: Matthew Burgess <mattyb149@apache.org> This closes apache#4301
…t object is defined as an interface, proxy that interface. This way, any method call into the object will also change the classloader to the appropriate classloader.
This closes apache#4303. Signed-off-by: Mark Payne <markap14@hotmail.com>
…d missing precision when reading in records Signed-off-by: Mark Payne <markap14@hotmail.com>
…E type in QueryRecord This closes apache#4223.
…ss tokens when supplied with appropriate credentials. Added skeleton of oauth2 provider. Added copy of our code. Refactored a few things. Updated apis to better match flow descriptions. Updated poms and other artifacts. Updated copyright notice. Updated LICENSE. This closes apache#4173 Signed-off-by: Jeremy Dyer <jeremydyer@apache.org>
…ocessGroup level Added FlowFileOutboundPolicy to ProcessGroups and updated LocalPort to make use of it Persisted FlowFile Concurrency and FlowFile Output Policy to flow.xml.gz and included in flow fingerprint Added configuration for FlowFile concurrency and outbound policy to UI for configuration of Process Groups Added system tests. Fixed a couple of bugs that were found Fixed a couple of typos in the RecordPath guide Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com> This closes apache#4306.
…iceInvocationHandler and fix checkstyle violation on NiFiSystemIT
Removed list structure for peer selection as it was unnecessary and often wasteful (most clusters are 3 - 7 nodes, the list was always 128 elements). Changed integer percentages to double to allow for better normalization. Removed 80% cap on remote peers as it was due to legacy requirements. Added unit tests for non-deterministic distribution calculations. Added unit tests for edge cases due to rounding errors, single valid remotes, unbalanced clusters, and peer queue consecutive selection tracking. Migrated all legacy PeerSelector unit tests to new API. Removed unused System time manipulation as tests no longer need it. Added class-level Javadoc to PeerSelector. Removed S2S details request replication, as the responses were not being merged, which led to incorrect ports being returned and breaking S2S peer retrieval. Fixed copy/paste error where input ports were being listed as output ports during remote flow refresh. Fixed comments and added unbalanced cluster test scenarios. Removed unnecessary marker interface. Removed commented code. Changed weighting & penalization behavior. Changed dependency scope to test. This closes apache#4289. Signed-off-by: Mark Payne <markap14@hotmail.com>
NIFI-6970 add DistributeRecord to the meta-inf, remove ORIGINAL relationship NIFI-6970 fix bug NIFI-6970 rename processor NIFI-6970 add 'replacement value' property and add tests
Thank you for submitting a contribution to Apache NiFi.
Please provide a short description of the PR here:
add DistributeRecord processor for distribute data over user specified relationships by distribution key/keys.
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-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
Has your PR been rebased against the latest commit within the target branch (typically
master)?Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not
squashor use--forcewhen pushing to allow for clean monitoring of changes.For code changes:
mvn -Pcontrib-check clean installat the rootnififolder?LICENSEfile, including the mainLICENSEfile undernifi-assembly?NOTICEfile, including the mainNOTICEfile found undernifi-assembly?.displayNamein addition to .name (programmatic access) for each of the new properties?For documentation related changes:
Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.