nifi-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Max Viazovskyi <iluvtec...@gmail.com>
Subject BUG: AbstractListProcessor stops to call performListing after primary node reelection to same node
Date Sat, 21 Apr 2018 23:06:40 GMT
Hi all,

I've encountered the bug when AbstractListProcessor stops performing listing
of entities when after reelection the same node become Primary. I'm using
dokerized NiFi 1.6.0 (Docker Version: 18.03.0-ce) and external Zookeeper.

STEPS TO REPRODUCE:
1. Download  docker-compose.yml
<http://apache-nifi-developer-list.39713.n7.nabble.com/file/t949/docker-compose.yml>
 
and  PutAndListSFTP.xml
<http://apache-nifi-developer-list.39713.n7.nabble.com/file/t949/PutAndListSFTP.xml>
 
2. Run /docker-compose up -d/ in the folder where you downloaded
docker-compose.yml. This command will run 3 containers - Zookeeper, NiFi
1.6.0 in Cluster Mode with 1 node, SFTPs server
3. After NiFi is up and running (check http://localhost:8080/nifi) upload
PutAndListSFTP.xml template and place it on NiFi canvas. It has simple logic
- generate flow file each 10 seconds and put it on SFTP, in parallel
ListSFTP processor "listens" for the new files and pushes data about them to
NiFi log with LogAttribute processor
4. Update PutSFTP and ListSFTP processors with password admin (to check SFTP
container use following credentials SFTP://admin:admin@localhost:2222)
5. Run the flow
6. Check the NiFi log (/docker logs -f --tail 100 nifi/) - you should see
attributes for the uploaded files on SFTP
7. Check that generated each 10 seconds files appear on SFTP /upload folder
8. Run following command to restart Zookeeper to put NiFi in reelection
state: /docker restart zookeeper/
9. After reelection phase finished check that new files appears on SFTP, but
NO new files info appears in NiFi log

I did remote debug and see when it happens AbstractListProcessor.onTrigger
method always gets to return at  line 377
<https://github.com/apache/nifi/blob/rel/nifi-1.6.0/nifi-nar-bundles/nifi-extension-utils/nifi-processor-utils/src/main/java/org/apache/nifi/processor/util/list/AbstractListProcessor.java#L377>

. 

To prevent it I suggest to update justElectedPrimaryNode to false just after
entering to the first if-body like here -
https://www.diffchecker.com/LcqetmMO

What do you think?

Thanks,
Max




--
Sent from: http://apache-nifi-developer-list.39713.n7.nabble.com/

Mime
View raw message