Duplicate method entries in EAP version

Questions about YourKit Java Profiler
Post Reply
Bananeweizen
Posts: 5
Joined: Thu Feb 27, 2014 4:35 pm

Duplicate method entries in EAP version

Post by Bananeweizen »

Hi,

I'm not sure whether this is actually a bug in the tool or me not getting it right, but I do not remember to see something like this in previous releases. I've been running the EAP 14008 against some unit tests and now some of the profiled methods are listed twice in the call tree, with slightly different times. Also when looking at the callees of 2 such seemingly identical methods, there are differences. Looking at the method list instead of call tree, there is of course only one occurrence of that method.

I can reproduce the issue with running other test suites and with starting a new profiling session.

I can't share a snapshot file, as our company has quite strict rules about giving code related information to third parties. I'm fine with sending a screenshot, if needed. Can I do anything else to dig deeper into this issue?

Ciao, Michael
Anton Katilin
Posts: 6172
Joined: Wed Aug 11, 2004 8:37 am

Re: Duplicate method entries in EAP version

Post by Anton Katilin »

Hi Michael

Could you please send a screenshot to [email protected]

I suppose it's related with filters:
http://www.yourkit.com/docs/java/help/filters.jsp

If some method f() is called via different sequence of filtered methods, there will be more than one entry in the tree.

For example, if there are two stacks:

Thread.run()
FilteredClassA.a()
FilteredClassB.b()
MyClass.f()

and

Thread.run()
FilteredClassC.c()
MyClass.f()

and the filters are applied, you'll get:

Thread.run()
MyClass.f() // calls from a()->b()
MyClass.f() // calls from c()

Best regards,
Anton
Bananeweizen
Posts: 5
Joined: Thu Feb 27, 2014 4:35 pm

Re: Duplicate method entries in EAP version

Post by Bananeweizen »

Hi Anton,

you are completely right. Disabling the filters, I can see that some of the unit tests are invoked from sun.reflect.NativeMethodAccessorImpl, some from sun.reflect.GeneratedMethodAccessor101, leading to the 2 different sections.

Case solved.

Thanks, Michael
Post Reply