Icon View Incident Report

Serious Serious
Reported By: Rolf Frei
Reported On: 10/9/2000
For: Version 2.03 Build 1
# 652 SQL or Filters Using the LIKE Operator On Large Memo Fields Will Cause a Stack Overflow

I have a problem with the attached data. I get an Stackoverflow if I run the following SQL. The stackoverflow comes sooner or later if the memofield is to large. The problem is the SearchValues memofield of the record with PartNo="www.trendversand.de". The content of this memofield is relatively big (ca. 410 KB in the attached Parts-Table). I did a debug with DBSYS and the stack overflow is occured in DBISAMLb.LikeString. The called MatchPattern in there, is called recursivly by moving the string for one to one char. So this MatchPattern call is listen many hundert/tousands times in the Call Stack View until the Stack Overflow is occuring.

Select * from Parts Where Enabled = 1
and ( Upper(partno) like ('%HONIG%') or Upper(description) like 
('%HONIG%') or
Upper(additionaldesc1) like ('%HONIG%') or Upper(additionaldesc2) 
like ('%HONIG%') or
Upper(SearchValues) like ('%HONIG%') )
and ResNum1 = 1
Order by description,partno



Resolution Resolution
Fixed Problem on 11/5/2000 in version 2.05 build 1
Image