Out of Memory Exception in Active Analysis

  • murali.424 3 years, 1 month ago

    Hi,

    We purchased Olap grid recently and later realized it has limitations with loading more than 100K records. So based on your suggestions, we decided to use Active Analysis but even this control also throws same out-of-memory exception.

    - I’ve used UnBoundDatasource to load a DataTable of just 4000 records to PivotTable.
    - In the initial load, I’ve loaded all Dimension fields to Rows shelf
    - When I try to drag & drop a Measure field to Data shelf, it is throwing memory exception.

    Can you give us some suggestions? Please see the attached snapshot for more details.

    Similar issue i’ve posted in Olap grid forum:

    http://our.componentone.com/groups/topic/out-of-memory-exception-in-olap-grid/#post-609247

    Attachments:
    You must be logged in to view attched files.
  • murali.424 3 years, 1 month ago

    Hi,

    Sometimes, i’m getting memory exception with just 5 records also. This happens only if more fields are selected in the grid – like around 10-15 Attributes, 4 Measures.

    Out of memory exception occurred in below scenarios:
    - When more Attribute fields are selected in the grid and when I try to drag/drop measure field to Data shelf.
    - In case I already saved layout view definition and try to apply it to PivotView (as you see in the below code, pivotview1.read….)
    - When I try to pre-select all fields in the grid. Error is thrown when I commit the layout changes.

    Below is the code I’m using:

    if (isConfigSaved)
    pivotView1.Read(myXml, GrapeCity.ActiveAnalysis.PersistSettings.Layout);
    else
    {
    //Use the ILayoutActions interface
                        GrapeCity.ActiveAnalysis.Layout.ILayoutActions myLayoutActions = pivotView1.BeginLayoutUpdate("init");
    
                        //Set the Marking type to Circle.
                        myLayoutActions.SetMarkingType(GrapeCity.ActiveAnalysis.Layout.MarkingType.Text);
    
                        foreach (DataColumn column in dt.Columns)
                        {
                            if (column.DataType == typeof(string))
                            {
                                myLayoutActions.AppendField("[Dimension].[" + column.ColumnName + "]", GrapeCity.ActiveAnalysis.Layout.ShelfKind.RowShelf);
                            }
                            else
                            {
                                myLayoutActions.AppendField("[Measures].[" + column.ColumnName + "]", GrapeCity.ActiveAnalysis.Layout.ShelfKind.DataShelf);
                            }
                        }
    
                        myLayoutActions.AppendField("[Measure Names]", GrapeCity.ActiveAnalysis.Layout.ShelfKind.ColumnShelf);
    
                        //Commit the layout actions to the viewer.
                       myLayoutActions.Commit(); 
    }

    Please let me know if I’m doing something wrong.

  • murali.424 3 years, 1 month ago

    Anyone there? Please respond!

  • 49p
    Ashish Jindal49p 3 years, 1 month ago

    Hello Murali,

    Sorry for the delay on this thread. I tried placing more than 12 attributes in the Row shelf and could observe that PivotView becomes unresponsive. However, I would like to know the usecase so that I can forward it to the development team for review. Can you kindly provide more information on the exact requirement for placing so many attributes for analyzing the data ?

    This would help the development team and thereby, they can provide a workaround, if possible.

    Regards

  • murali.424 3 years, 1 month ago

    Thanks for your reply!

    This is actually our business requirement:

    - To be able to select any number of columns (attributes/measures) that are available on the screen and generate a report that user wants to review. So based on the selections made on the screen, our backend returns a DataTable that we load to (AA) grid.

    - To be able to load huge data (more than 500K records)

    - Ability to see all columns when many (like 20) attributes are loaded to grid. In Olap Grid, horizontal scrollbar was enabled only for measures so if more columns are selected, we were unable to see all the data.

    Please let me know if you need any other information.

  • 49p
    Ashish Jindal49p 3 years, 1 month ago

    Hello Murali,

    Thanks for the information. I have escalated this issue i.e. ActiveAnalysis becomes unresponsive when more than 12 attributes are placed in Row shelf to the development team for review and would update you as soon as I get anything from them.

    Regards

  • murali.424 3 years, 1 month ago

    Thanks for looking into this.

    I came to know that this issue has been escalated to your development team to fix this bug (FB id: 173403).

    Do you know when can I expect the hot-fix? And where I can check the status of this bug?

  • murali.424 3 years, 1 month ago

    Someone please respond! We want to know when this gets fixed so that we can decide whether to use this component in our Project or not.

    And by the way, it is not just happening when I select more Attribute fields in the grid but also, when I try to load huge data (with > 100K records) and select some of the fields in the initial load like below:

    //Use the ILayoutActions interface
                        GrapeCity.ActiveAnalysis.Layout.ILayoutActions myLayoutActions = pivotView1.BeginLayoutUpdate("init");
     
                        //Set the Marking type to Circle.
                        myLayoutActions.SetMarkingType(GrapeCity.ActiveAnalysis.Layout.MarkingType.Text);
     
                        foreach (DataColumn column in dt.Columns)
                        {
                            if (column.DataType == typeof(string))
                            {
                                myLayoutActions.AppendField("[Dimension].[" + column.ColumnName + "]", GrapeCity.ActiveAnalysis.Layout.ShelfKind.RowShelf);
                            }
                            else
                            {
                                myLayoutActions.AppendField("[Measures].[" + column.ColumnName + "]", GrapeCity.ActiveAnalysis.Layout.ShelfKind.DataShelf);
                            }
                        }
     
                        myLayoutActions.AppendField("[Measure Names]", GrapeCity.ActiveAnalysis.Layout.ShelfKind.ColumnShelf);
     
                        //Commit the layout actions to the viewer.
                       myLayoutActions.Commit();
  • 49p
    Ashish Jindal49p 3 years, 1 month ago

    Hello Murali,

    Can you kindly provide the sample data which you are using so that development team can check and can suggest accordingly ?

    Regards

  • 49p
    Ashish Jindal49p 3 years, 1 month ago

    Hello Murali,

    The development team has made some changes related to your issue and dropped a temporary build. Could you kindly check with this build and let me know if it resolves the issue or not ?

    The build is available at this link:
    ftp://ftp.componentone.com/SupportFTP/Public/Ashish/analysis2.1.958.0.zip

    Regards

  • murali.424 3 years, 1 month ago

    It’s not yet fixed! I’ve tested with just 5 records and grid is taking forever to load the data.

    I tried to load 20 attributes and 4 measures in the initial load. Waited for almost 40 mins but still not getting loaded.

    Please see the attached snapshot.

    Attachments:
    You must be logged in to view attched files.
  • 49p
    Ashish Jindal49p 3 years, 1 month ago

    Hello Murali,

    Thanks for the information. I have forwarded your comments to the development team and would update you as soon as I get anything from them.

    Regards

  • 2p
    captell2p 2 years, 10 months ago

    Is there any update on this one, I’m just starting a project and intend to use AA but not if it still suffers from these issues.

    Adrian.

  • 49p
    Ashish Jindal49p 2 years, 10 months ago

    Hello Adrain,

    Are you loading all the attributes on the initial load ? If so, did you tried using the 958 build mentioned in one of my post above?

    If not, then you can use ActiveAnalysis and can refer to the following link describing how you can optimize the performance:

    http://helpcentral.componentone.com/nethelp/ActiveAnalysis2WebHelp/webframe.html#OptimizeDataDynamicsAnalysis.html

    Regards

  • 2p
    captell2p 2 years, 10 months ago

    I’m trying that version now and will let you know. One other thing on the our of memory error, is there any way to trap this error so that it can be handled properly. I don’t have an issue with running out of memory as such, my system may load anywhere from a few hundred records up to several hundred thousand. If it runs out of memory that’s ok but I MUST be able to trap and handle the error cleanly.

Viewing 15 posts - 1 through 15 (of 26 total)

You must be logged in to reply to this topic.