This is a migrated thread and some comments may be shown as answers.

Stack Overflow with LoadOnDemand

13 Answers 186 Views
ComboBox
This is a migrated thread and some comments may be shown as answers.
Adam
Top achievements
Rank 1
Adam asked on 23 Oct 2008, 06:04 PM
I'm using a radcombobox with the loadondemand functionality. Here is the definition:

<telerik:RadComboBox Height="200px" EnableVirtualScrolling=True ShowMoreResultsBox=True NoWrap=True OnItemsRequested="FillDomain" ID="cboDom21" runat="server" EnableItemCaching="True" EnableLoadOnDemand="True" 
                                            Width="250px" Visible=False Sort="Ascending"
                                            <CollapseAnimation Duration="200" Type="OutQuint" /> 
                                        </telerik:RadComboBox> 

Here is the code for the function that is filling the combobox (This is from the FillDomain function)

Dim drs() As DataRow = dt.Select("Text like '%" & e.Text.Replace("'""''") & "%'""Text ASC"
 
        Try 
            Dim itemsPerRequest As Integer = 100 
            Dim itemOffset As Integer = e.NumberOfItems 
            Dim endOffset As Integer = itemOffset + itemsPerRequest 
            If endOffset > drs.Length Then 
                endOffset = drs.Length 
            End If 
 
            If endOffset = drs.Length Then 
                e.EndOfItems = True 
            End If 
            Dim i As Integer = itemOffset 
            While i < endOffset 
                ctlCbo.Items.Add(New Telerik.Web.UI.RadComboBoxItem(drs(i)("Text").ToString(), drs(i)("Value").ToString())) 
                i = i + 1 
            End While 
 
            If drs.Length > 0 Then 
                e.Message = [String].Format("Items <b>1</b>-<b>{0}</b> out of <b>{1}</b>", endOffset.ToString(), drs.Length.ToString()) 
            Else 
                e.Message = "No matches" 
            End If 
        Catch 
            e.Message = "No matches" 
        End Try 

The problem that I'm having is that after I go through and start typing things into the combobox and removing characters (basically just messing around with it testing the functionality), I end up getting a popup that says "Stack overflow at line: 117". I was getting them on different lines, but 117 seems to be the line that is causing an issue right now. I know it isn't line 117 of the code in my page and must be something under the covers in RadComboBox. Finally, the main data source for this box has over 10,000 items in it that is being filtered.

Any idea how I can fix this, if a fix is available, or if I can get around it.

Thanks,
Adam

13 Answers, 1 is accepted

Sort by
0
Rosi
Telerik team
answered on 24 Oct 2008, 07:06 AM
Hello Adam,

Thank you for your interest in our control.

We are not sure what cause the issue. Do you experience the same problem with less items?
Also, please find the attached beta Q3 release to this message.

It contains performance improvements in RadComboBox implementation. You can download it and test it.

Regards,
Rosi
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Adam
Top achievements
Rank 1
answered on 24 Oct 2008, 02:47 PM
Unfortunately, the patch didn't work. Now I get the error on Line 63. It does not appear to happen when there are fewer items in the main dataset. I thought that perhaps it had to do with how quickly I was typing into the combobox, but that doesn't seem to make a difference either. I can type it slowly or quickly, and I'll still get the error.
0
Rosi
Telerik team
answered on 27 Oct 2008, 08:28 AM
Hello Adam,

I suggest you use the ShowMoreResultsBox property of RadComboBox. The ShowMoreResultsBox mechanism allows you to load portions of items, thus achieving a better performance when a huge amount of items is meant to be loaded. I suggest you load items on portion by 1000.

Regards,
Rosi
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Adam
Top achievements
Rank 1
answered on 27 Oct 2008, 02:05 PM
The ShowMoreResultsBox has been enabled. I changed the number of items per request to 1000 and now it gets the error on line 665 (using the latest version of the 2008 Q2 controls).
0
Rosi
Telerik team
answered on 28 Oct 2008, 07:16 AM
Hello Adam,

Please find the attached project.

Do you experience the same problem with it? It works as expected at our side.

Could you send us a live url where we can see the problem?

Regards,
Rosi
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Adam
Top achievements
Rank 1
answered on 28 Oct 2008, 02:01 PM
I compared my settings with what you had. It appears that the problem is in the EnableItemCaching property. When I have it turned on, I get the stack overflow errors, when I turn it off or remove it, the errors no longer occur. This may be something worth looking into.

Thanks,
Adam
0
Rosi
Telerik team
answered on 28 Oct 2008, 03:02 PM
Hi Adam,

I enabled the EnableItemCaching  property in the project which I have sent you. However the problem still does not exist.
 
Could you please open a support ticket and send us a sample project illustrating the problem or a live url to test it locally? This will really help us to find the problem and solve it.

Regards,
Rosi
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Adam
Top achievements
Rank 1
answered on 28 Oct 2008, 03:08 PM
You need to use items that are longer than 1 character in length (probably in the 25-50 character range would be better). The problem usually occurs after typing in at least 2 letters. It will pause for a while and then popup the error message. I've had it error out on as few as 2 characters entered, and up to 4 characters. Usually when I find a combination that breaks it, it will continue to break it until I make a change of some kind and then the combination of characters may have to change to get it to consistently break again. 
0
Rosi
Telerik team
answered on 29 Oct 2008, 07:57 AM
Hello Adam,

We have modified the project and try to reproduce the problem but to no avail. You can see the attached movie and project for a reference.

Are we doing something wrong?

Regards,
Rosi
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Adam
Top achievements
Rank 1
answered on 30 Oct 2008, 04:20 PM
Here is a link to a video of it throwing the errors.

0
Rosi
Telerik team
answered on 31 Oct 2008, 02:13 PM
Hi Adam,

Please find the attached latest internal build. This should fix the problem.

Best wishes,
Rosi
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Adam
Top achievements
Rank 1
answered on 05 Nov 2008, 04:21 PM
It appears that the hotfix would solve the issue. When can we expect an official release of this fix?

Thanks,
Adam
0
Rosi
Telerik team
answered on 05 Nov 2008, 04:25 PM
Hi Adam,

This fix will be released in our Q3 release until the end of the week.

Kind regards,
Rosi
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
Tags
ComboBox
Asked by
Adam
Top achievements
Rank 1
Answers by
Rosi
Telerik team
Adam
Top achievements
Rank 1
Share this question
or