Thanks for the info.  I'll try to orchestrate a similar setup when I get a
bit of free time later in hopes of recreating and diagnosing.  For some
context, I was operating on OS X with a local instance and using IntelliJ.

On Thu, Mar 3, 2016 at 11:55 AM, Pierre Villard <pierre.villard...@gmail.com
> wrote:

> I am connecting remotely to my instance on default port suggested in
> bootstrap.conf (8000) and I am using Eclipse IDE.
> Also tried in local following recommendations from Oleg with
> nifi-ide-integration to directly launch Nifi from Eclipse: same result.
>
> 2016-03-03 17:46 GMT+01:00 Aldrin Piri <aldrinp...@gmail.com>:
>
> > Thanks for the info.  Are you doing all of this debugging local to that
> > instance (via tunnel/VNC/etc) or connecting remotely across the network
> to
> > that instance?  Also, what IDE are you using to bind to the remote
> session?
> >
> > On Thu, Mar 3, 2016 at 10:02 AM, Pierre Villard <
> > pierre.villard...@gmail.com
> > > wrote:
> >
> > > That's a RedHat 7.2 VM running on AWS EC2 services.
> > >
> > > 2016-03-03 15:55 GMT+01:00 Aldrin Piri <aldrinp...@gmail.com>:
> > >
> > > > Hmm... Java version should be okay.  What OS are you running on?
> > > >
> > > > On Thu, Mar 3, 2016 at 4:04 AM, Pierre Villard <
> > > > pierre.villard...@gmail.com>
> > > > wrote:
> > > >
> > > > > Aldrin,
> > > > >
> > > > > Thanks looking at this!
> > > > >
> > > > > There is no additional change other than what is on the branch.
> Just
> > to
> > > > be
> > > > > sure, I set up a clean VM with nothing else on it, checked out the
> > > > branch,
> > > > > built it (with Maven 3.3.9, Java 1.8.0_74, mvn clean install
> > > > -DskipTests),
> > > > > started Nifi with debug enabled, added SNMP Get processor, set
> > > > properties,
> > > > > started it and stopped it. AbstractSNMPProcessor#close method never
> > got
> > > > > triggered.
> > > > >
> > > > > Do you think I should try with another version of Java?
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > 2016-03-02 22:58 GMT+01:00 Aldrin Piri <aldrinp...@gmail.com>:
> > > > >
> > > > > > Pierre,
> > > > > >
> > > > > > I did a build of the specified branch, enabled the remote
> debugging
> > > and
> > > > > > added a breakpoint within the AbstractSNMPProcessor#close method
> > > which
> > > > > was
> > > > > > successfully triggered on stopping.  I additionally added a
> > > breakpoint
> > > > > > within ReflectionUtils and was able to trace that path to the
> same
> > > > #close
> > > > > > method.  Not discounting that there is an issue, but it appears
> > there
> > > > may
> > > > > > be additional factors to consider in diagnosing the root cause.
> > > > > >
> > > > > > Are there any additional changes beyond the the branch you shared
> > > above
> > > > > or
> > > > > > other libraries/NARs included in your environment?  Could you
> also
> > > > please
> > > > > > specify the version of Java you are using?
> > > > > >
> > > > > > On Wed, Mar 2, 2016 at 5:53 AM, Pierre Villard <
> > > > > > pierre.villard...@gmail.com>
> > > > > > wrote:
> > > > > >
> > > > > > > Sure, the branch is available here :
> > > > > > > https://github.com/pvillard31/nifi/tree/NIFI-1537
> > > > > > > Let me know if I can be of any help.
> > > > > > >
> > > > > > > 2016-03-02 11:48 GMT+01:00 Oleg Zhurakousky <
> > > > > > ozhurakou...@hortonworks.com
> > > > > > > >:
> > > > > > >
> > > > > > > > Pierre
> > > > > > > >
> > > > > > > > Is your branch available to look at? May be a second pair of
> > eyes
> > > > is
> > > > > > due
> > > > > > > ;)
> > > > > > > >
> > > > > > > > Cheers
> > > > > > > > Oleg
> > > > > > > >
> > > > > > > > > On Mar 2, 2016, at 4:20 AM, Pierre Villard <
> > > > > > > pierre.villard...@gmail.com>
> > > > > > > > wrote:
> > > > > > > > >
> > > > > > > > > Mark,
> > > > > > > > >
> > > > > > > > > I just checked and it seems to be OK. My processor is a NAR
> > and
> > > > the
> > > > > > > > > nifi-api.jar is not into the nar. Actually, I took the AMQP
> > > > > processor
> > > > > > > as
> > > > > > > > > example to build and integrate the SNMP one in Nifi, so not
> > > sure
> > > > to
> > > > > > see
> > > > > > > > why
> > > > > > > > > it does not work.
> > > > > > > > >
> > > > > > > > > 2016-03-01 18:38 GMT+01:00 Mark Payne <
> marka...@hotmail.com
> > >:
> > > > > > > > >
> > > > > > > > >> Pierre,
> > > > > > > > >>
> > > > > > > > >> This feels to me like it could potentially be a classpath
> > > issue.
> > > > > The
> > > > > > > > >> nifi-api.jar file is on the
> > > > > > > > >> root class path (exists in $NIFI_HOME/lib). If there is a
> > > > > different
> > > > > > > > class
> > > > > > > > >> definition in your processor,
> > > > > > > > >> then it will not find the annotation.
> > > > > > > > >>
> > > > > > > > >> If you are deploying your processor as a NAR, though, the
> > > maven
> > > > > nar
> > > > > > > > plugin
> > > > > > > > >> should prevent you
> > > > > > > > >> from bundling the nifi-api.jar into the nar. It may be
> worth
> > > > while
> > > > > > > > though
> > > > > > > > >> to poke around and make sure
> > > > > > > > >> that you don't have two copies of the OnStopped annotation
> > > class
> > > > > > > defined
> > > > > > > > >> in the classpath, though.
> > > > > > > > >>
> > > > > > > > >> Thanks
> > > > > > > > >> -Mark
> > > > > > > > >>
> > > > > > > > >>
> > > > > > > > >>
> > > > > > > > >>> On Mar 1, 2016, at 12:15 PM, Pierre Villard <
> > > > > > > > pierre.villard...@gmail.com>
> > > > > > > > >> wrote:
> > > > > > > > >>>
> > > > > > > > >>> Nice! I used your nifi-ide-integration project to launch
> > Nifi
> > > > > from
> > > > > > my
> > > > > > > > IDE
> > > > > > > > >>> and I reproduced the issue just by starting/stopping the
> > > > > processor
> > > > > > > > (with
> > > > > > > > >> a
> > > > > > > > >>> breakpoint in ReflectionUtils). I'll try to find some
> time
> > to
> > > > > > > reproduce
> > > > > > > > >> it
> > > > > > > > >>> in a unit test if this can help to find the issue.
> > > > > > > > >>>
> > > > > > > > >>> Pierre
> > > > > > > > >>>
> > > > > > > > >>> 2016-03-01 13:56 GMT+01:00 Oleg Zhurakousky <
> > > > > > > > >> ozhurakou...@hortonworks.com>:
> > > > > > > > >>>
> > > > > > > > >>>> Pierre
> > > > > > > > >>>>
> > > > > > > > >>>> You can simplify your interactive debugging and do it
> > right
> > > > from
> > > > > > IDE
> > > > > > > > >>>> https://github.com/olegz/nifi-ide-integration/
> > > > > > > > >>>> Just make sure that versioning in Gradle reflects
> current
> > > > > version.
> > > > > > > > >>>> I’ll update as well when I get a chance.
> > > > > > > > >>>>
> > > > > > > > >>>> Oleg
> > > > > > > > >>>>
> > > > > > > > >>>> On Mar 1, 2016, at 4:47 AM, Pierre Villard <
> > > > > > > > pierre.villard...@gmail.com
> > > > > > > > >>>> <mailto:pierre.villard...@gmail.com>> wrote:
> > > > > > > > >>>>
> > > > > > > > >>>> No it is not in a unit test, I remotely attached my
> > Eclipse
> > > in
> > > > > > debug
> > > > > > > > >> mode
> > > > > > > > >>>> to my deployed Nifi instance.
> > > > > > > > >>>> I can try to code a unit test and reproduce the issue
> > using
> > > > the
> > > > > > > > example
> > > > > > > > >> you
> > > > > > > > >>>> gave.
> > > > > > > > >>>>
> > > > > > > > >>>> 2016-02-29 18:22 GMT+01:00 Oleg Zhurakousky <
> > > > > > > > >> ozhurakou...@hortonworks.com
> > > > > > > > >>>> <mailto:ozhurakou...@hortonworks.com>>:
> > > > > > > > >>>>
> > > > > > > > >>>> I meant could you share the test code (via github)
> > > > > > > > >>>>
> > > > > > > > >>>> On Feb 29, 2016, at 12:18 PM, Oleg Zhurakousky <
> > > > > > > > >>>> ozhurakou...@hortonworks.com<mailto:
> > > > > ozhurakou...@hortonworks.com
> > > > > > >>
> > > > > > > > >> wrote:
> > > > > > > > >>>>
> > > > > > > > >>>> Ok, so you are invoking
> > > ‘quietlyInvokeMethodsWithAnnotations’
> > > > in
> > > > > > > your
> > > > > > > > >>>> test code?
> > > > > > > > >>>> If so could you your test code where you invoke it? I
> > have a
> > > > > > hunch,
> > > > > > > > but
> > > > > > > > >>>> want to look before I speculate.
> > > > > > > > >>>>
> > > > > > > > >>>> Cheers
> > > > > > > > >>>> Oleg
> > > > > > > > >>>> On Feb 29, 2016, at 11:58 AM, Pierre Villard <
> > > > > > > > >>>> pierre.villard...@gmail.com<mailto:
> > > > pierre.villard...@gmail.com
> > > > > >>
> > > > > > > > wrote:
> > > > > > > > >>>>
> > > > > > > > >>>> I just wanted to test the processors with local SNMP
> > set-up
> > > > and
> > > > > I
> > > > > > > > >>>> noticed
> > > > > > > > >>>> that modification of properties in my processor didn't
> > have
> > > > any
> > > > > > > > effect.
> > > > > > > > >>>> So I switched to debug, added a processor, started it,
> and
> > > > > stopped
> > > > > > > it
> > > > > > > > >>>> just
> > > > > > > > >>>> after. Conclusion: my close() method is never called.
> > > > > > > > >>>> I correctly go through
> > quietlyInvokeMethodsWithAnnotations()
> > > > in
> > > > > > > > >>>> ReflectionUtils but since the method is not seen as
> > > annotated,
> > > > > the
> > > > > > > > close
> > > > > > > > >>>> method is not called.
> > > > > > > > >>>>
> > > > > > > > >>>> Thanks,
> > > > > > > > >>>> Pierre
> > > > > > > > >>>>
> > > > > > > > >>>> 2016-02-28 22:24 GMT+01:00 Oleg Zhurakousky <
> > > > > > > > >>>> ozhurakou...@hortonworks.com<mailto:
> > > > > ozhurakou...@hortonworks.com
> > > > > > >>:
> > > > > > > > >>>>
> > > > > > > > >>>> I am puzzled as I can’t see how can it not work.
> > > > > > > > >>>> Are there steps to reproduce it? I am trying to read
> into
> > > your
> > > > > > > initial
> > > > > > > > >>>> email and suspecting you were doing some sort of
> testing,
> > so
> > > > > want
> > > > > > to
> > > > > > > > >>>> make
> > > > > > > > >>>> sure I am doing the same thing. . . .
> > > > > > > > >>>>
> > > > > > > > >>>> Oleg
> > > > > > > > >>>> On Feb 28, 2016, at 2:46 PM, Pierre Villard <
> > > > > > > > >>>> pierre.villard...@gmail.com<mailto:
> > > > pierre.villard...@gmail.com
> > > > > >>
> > > > > > > > >>>> wrote:
> > > > > > > > >>>>
> > > > > > > > >>>> No I am not under testing framework, all my unit tests
> are
> > > > OK. I
> > > > > > > > >>>> wanted
> > > > > > > > >>>> to
> > > > > > > > >>>> perform some additional tests and deployed Nifi with the
> > new
> > > > > > > > >>>> processors.
> > > > > > > > >>>>
> > > > > > > > >>>> You can find the method here [1] if you want to have a
> > look.
> > > > > > > > >>>> Thanks for your help.
> > > > > > > > >>>>
> > > > > > > > >>>> [1]
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/pvillard31/nifi/blob/NIFI-1537/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/AbstractSNMPProcessor.java#L212-L243
> > > > > > > > >>>>
> > > > > > > > >>>> 2016-02-28 17:11 GMT+01:00 Oleg Zhurakousky <
> > > > > > > > >>>> ozhurakou...@hortonworks.com>:
> > > > > > > > >>>>
> > > > > > > > >>>> Also, reading Aldrin’s response and assuming you are
> using
> > > > Test
> > > > > > > > >>>> mocks I
> > > > > > > > >>>> would probably recommend to not use them for tests that
> > > > require
> > > > > > full
> > > > > > > > >>>> lifecycle test of the component until we actually
> improve
> > > it.
> > > > > > > > >>>> Instead you can code straight agains FlowController
> > > > essentially
> > > > > > > > >>>> executing
> > > > > > > > >>>> as a full blown NiFi minus UI. Here is an example:
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/apache/nifi/pull/210/files#diff-7be646c38c5447f7824e444343633829R92
> > > > > > > > >>>>
> > > > > > > > >>>> Cheers
> > > > > > > > >>>> Oleg
> > > > > > > > >>>>
> > > > > > > > >>>> On Feb 28, 2016, at 11:07 AM, Oleg Zhurakousky <
> > > > > > > > >>>> ozhurakou...@hortonworks.com<mailto:
> > > > > ozhurakou...@hortonworks.com
> > > > > > >>
> > > > > > > > >>>> wrote:
> > > > > > > > >>>>
> > > > > > > > >>>> Pierre
> > > > > > > > >>>> Can you paste the method definition? Just want to look
> at
> > > the
> > > > > > > > >>>> signature
> > > > > > > > >>>> and see if there is something obvious
> > > > > > > > >>>>
> > > > > > > > >>>> Sent from my iPhone
> > > > > > > > >>>>
> > > > > > > > >>>> On Feb 28, 2016, at 10:26, Pierre Villard <
> > > > > > > > >>>> pierre.villard...@gmail.com
> > > > > > > > >>>> <mailto:pierre.villard...@gmail.com>> wrote:
> > > > > > > > >>>>
> > > > > > > > >>>> Hi,
> > > > > > > > >>>>
> > > > > > > > >>>> I am working on SNMP processors [1] and I'm almost ready
> > > for a
> > > > > > PR...
> > > > > > > > >>>> but I
> > > > > > > > >>>> have an issue I can't explain. In my processors, I have
> > > > > > implemented
> > > > > > > a
> > > > > > > > >>>> method close() with the @OnStopped annotation but it
> seems
> > > the
> > > > > > > > >>>> annotation
> > > > > > > > >>>> is not seen. When debugging and stopping my processor, I
> > > > > correctly
> > > > > > > go
> > > > > > > > >>>> through quietlyInvokeMethodsWithAnnotations() in
> > > > ReflectionUtils
> > > > > > and
> > > > > > > > >>>> my
> > > > > > > > >>>> method close() appears without any annotation. I guess I
> > am
> > > > > > missing
> > > > > > > > >>>> something simple. Any idea?
> > > > > > > > >>>>
> > > > > > > > >>>> [1] https://issues.apache.org/jira/browse/NIFI-1537
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>>>
> > > > > > > > >>
> > > > > > > > >>
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to