flex-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Harui (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLEX-35279) Apache Flex Screen freeze
Date Mon, 06 Mar 2017 23:07:32 GMT

    [ https://issues.apache.org/jira/browse/FLEX-35279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15898340#comment-15898340
] 

Alex Harui commented on FLEX-35279:
-----------------------------------

Hard to say if that will fix the issue.  Is the data structure extremely complex?  It might
be worth getting a performance profile to see what else is going on.  In the posted stack
trace, the Application's resizeHandler is running, which causes the visibility of the OrderMaintenanceWindow
to change, which results in the dataProvider being changed in the grid and then all the nodes
in the DataGrid get expanded.  But we don't know what else happened during these 60 seconds.
 Maybe something else happened during the resizeHandler that ate up 50 of the 60 seconds.
 Maybe the rest of the OrderMaintenanceWindow had to be initialized and that ate up 50 of
the 60 seconds.  A profiler would shed some light here.

It seems improbably that expandAll would be the first line in every stack trace.  I could
believe it if expandAll is always in the list but the things it calls are frequently the first
line.

When the player has 60 seconds to run all of this code, other things running on the system
are a factor.  If you have all of your CPUs busy doing other things, then Flash may only run
10% of the code instructions it might run if nothing else was running.  So what you really
want to do is make sure there are no long loops in your app.

In theory, it is possible to replace expandAll() with a pseudo-threaded expand equivalent.
 It might take longer to do its thing, but if you only expand a few nodes in each callLater,
you will be better guaranteed to avoid future timeouts.  Here's an old blog article about
pseudo-threading.  http://blogs.adobe.com/aharui/?s=pseudo+thread&submit=


> Apache Flex Screen freeze
> -------------------------
>
>                 Key: FLEX-35279
>                 URL: https://issues.apache.org/jira/browse/FLEX-35279
>             Project: Apache Flex
>          Issue Type: Bug
>          Components: Advanced Data Grid
>    Affects Versions: Apache Flex 4.15.0
>         Environment: IE, Firefox, and Chrome Browsers
>            Reporter: Scott Capilouto
>            Priority: Critical
>
> We have an application where we are seeing intermittently screen freezes with the following
error. Apache Flex appears to freeze for a minute to a minute and half before resuming.
> Would you happen to know what might be causing this?
> We are able to see this error when running from Firefox in Debug mode:
> Error: Error #1502: A script has executed for longer than the default timeout period
of 15 seconds.
> at mx.controls::AdvancedDataGrid/expandAll()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as:5780]
> at mx.controls::AdvancedDataGrid/collectionChangeHandler()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as:8232]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at mx.collections::HierarchicalCollectionView/internalRefresh()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionView.as:1272]
> at mx.collections::HierarchicalCollectionView/collectionChangeHandler()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionView.as:1459]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at mx.collections::HierarchicalData/set source()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalData.as:153]
> at mx.binding::Binding/defaultDestFunc()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/binding/Binding.as:305]
> at Function/http://adobe.com/AS3/2006/builtin::call()
> at mx.binding::Binding/innerExecute()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/binding/Binding.as:511]
> at Function/http://adobe.com/AS3/2006/builtin::apply()
> at mx.binding::Binding/wrapFunctionCall()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/binding/Binding.as:418]
> at mx.binding::Binding/execute()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/binding/Binding.as:356]
> at mx.binding::Binding/watcherFired()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/binding/Binding.as:539]
> at mx.binding::Watcher/notifyListeners()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/binding/Watcher.as:317]
> at mx.binding::PropertyWatcher/eventHandler()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/binding/PropertyWatcher.as:385]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at com.homedepot.mm.sv.esvs.model::SVSModelLocator/dispatchEvent()
> at com.homedepot.mm.sv.esvs.model::SVSModelLocator/set acLocalLineItemData()
> at com.homedepot.mm.sv.esvs.view.order::ProductEntry/refreshLineItemDataGrid()[C:\bkpppp\esvs\MMSVESVSWeb\src\com\homedepot\mm\sv\esvs\view\order\ProductEntry.mxml:6638]
> at com.homedepot.mm.sv.esvs.view.order::OrderMaintenanceWindow/measureServiceViewHideHandler()[C:\bkpppp\esvs\MMSVESVSWeb\src\com\homedepot\mm\sv\esvs\view\order\OrderMaintenanceWindow.mxml:1111]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at mx.core::UIComponent/dispatchEvent()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/core/UIComponent.as:13688]
> at mx.core::UIComponent/setVisible()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/core/UIComponent.as:3301]
> at mx.containers::ViewStack/commitSelectedIndex()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/mx/src/mx/containers/ViewStack.as:1227]
> at mx.containers::ViewStack/commitProperties()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/mx/src/mx/containers/ViewStack.as:767]
> at mx.core::UIComponent/validateProperties()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/core/UIComponent.as:8751]
> at mx.managers::LayoutManager/validateProperties()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/managers/LayoutManager.as:605]
> at mx.managers::LayoutManager/doPhasedInstantiation()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/managers/LayoutManager.as:821]
> at mx.managers::LayoutManager/validateNow()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/managers/LayoutManager.as:886]
> at mx.core::Application/resizeHandler()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/mx/src/mx/core/Application.as:1742]
> at mx.core::Application/commitProperties()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/mx/src/mx/core/Application.as:1095]
> at mx.core::UIComponent/validateProperties()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/core/UIComponent.as:8751]
> at mx.managers::LayoutManager/validateProperties()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/managers/LayoutManager.as:605]
> at mx.managers::LayoutManager/doPhasedInstantiation()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/managers/LayoutManager.as:821]
> at mx.managers::LayoutManager/doPhasedInstantiationCallback()[/Users/justinmclean/Documents/ApacheFlex4.15/frameworks/projects/framework/src/mx/managers/LayoutManager.as:1188]



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message