You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@flex.apache.org by Brett Trotter <br...@webfilings.com> on 2013/06/24 19:06:25 UTC

Potential bug with the Flash Builder profiler?

Hello, I have what I hope is a quick question for anyone. We have a quite
large Flex based application with multiple dynamically loaded RSLs. In
profiling the application, we see what appear to be "false flag" weak
references showing up in the loitering objects. We have to go and turn
things off and until we get rid of all potential weak references before we
see the real GC root holding on to the memory. I'd like to think I'm doing
something wrong. Is this something you've seen and either know how to fix
or can confirm it's a bug in the Adobe Flash Builder Profiler?

Re: Potential bug with the Flash Builder profiler?

Posted by Brett Trotter <br...@webfilings.com>.
Well, I should have been a bit more detailed, but I figured it wouldn't be
a 1-email and done. I think the somewhat hidden "show all back references"
may be the culprit.

Essentially when we were going go to profile, the only GC roots we'll see
for a particular object that we know should have gone away will end up
being things like addEventListener calls (with weak reference set true) and
dictionaries with weakReference set true. We then have to go through,
diable the dictionary, remove the event, etc, until we get through all weak
references before we get to even see what the real GC root was.

That said, after turning on the "show all back references" option, things
look better. Rather than seeing one object with 10 things that happen to be
weak references, it looks like all of them are now showing up. Because of
the grouping the "all back references" display was misleading since there
were actually hundreds of back references, so now I see one item with 110
backreferences that are weak and the other ones show up in their own line
items.

I think my problem is taken care of and I'm glad it was simple.


On Mon, Jun 24, 2013 at 5:25 PM, Alex Harui <ah...@adobe.com> wrote:

> Have you read through my blog post about the profiler?
>
> http://blogs.adobe.com/aharui/2008/09/using_the_flex_builder_3x_prof.html
>
> Loitering Objects cannot be used for all scenarios.  Sometimes manual
> comparison is required.
>
> Weak references do create "noise" in that you have to learn to ignore them
> (or remove them) when chasing down the source of a leak.  Make sure you
> set the option to show all back references instead of just "20" or
> whatever the default is.  I've not seen any "bugs" in the profiler
> regarding weak references.  The profiler does not know how to filter out
> which references are weak.
>
> HTH,
> -Alex
>
>
> On 6/24/13 10:06 AM, "Brett Trotter" <br...@webfilings.com> wrote:
>
> >Hello, I have what I hope is a quick question for anyone. We have a quite
> >large Flex based application with multiple dynamically loaded RSLs. In
> >profiling the application, we see what appear to be "false flag" weak
> >references showing up in the loitering objects. We have to go and turn
> >things off and until we get rid of all potential weak references before we
> >see the real GC root holding on to the memory. I'd like to think I'm doing
> >something wrong. Is this something you've seen and either know how to fix
> >or can confirm it's a bug in the Adobe Flash Builder Profiler?
>
>

Re: Potential bug with the Flash Builder profiler?

Posted by Alex Harui <ah...@adobe.com>.
Have you read through my blog post about the profiler?

http://blogs.adobe.com/aharui/2008/09/using_the_flex_builder_3x_prof.html

Loitering Objects cannot be used for all scenarios.  Sometimes manual
comparison is required.

Weak references do create "noise" in that you have to learn to ignore them
(or remove them) when chasing down the source of a leak.  Make sure you
set the option to show all back references instead of just "20" or
whatever the default is.  I've not seen any "bugs" in the profiler
regarding weak references.  The profiler does not know how to filter out
which references are weak.

HTH,
-Alex


On 6/24/13 10:06 AM, "Brett Trotter" <br...@webfilings.com> wrote:

>Hello, I have what I hope is a quick question for anyone. We have a quite
>large Flex based application with multiple dynamically loaded RSLs. In
>profiling the application, we see what appear to be "false flag" weak
>references showing up in the loitering objects. We have to go and turn
>things off and until we get rid of all potential weak references before we
>see the real GC root holding on to the memory. I'd like to think I'm doing
>something wrong. Is this something you've seen and either know how to fix
>or can confirm it's a bug in the Adobe Flash Builder Profiler?