Big SQL WHERE clause causes a OpenEdge system error

Posted by vitprof on 27-Jan-2015 01:34

Hi,

I have a SQL query with big WHERE clause: it contains a lot of OR conditions. When the number of conditions is not great all is ok. But with about 30 OR conditions the query fails. The error message is below:

Insufficient Memory. Memory allocation failed at 364 in /vobs_sql/sql/src/sts/sts_sortaggr.cxx. Contact Progress Technical Support

Do you have any ideas why it is hapenned and how to fix? Thank you in advance.

All Replies

Posted by Dileep Dasa on 27-Jan-2015 01:39

Please have a look at these knowledge base articles:

knowledgebase.progress.com/.../P127996

knowledgebase.progress.com/.../P129484

Posted by vitprof on 27-Jan-2015 01:50

Dileep Dasa, great, thank you!

Posted by steve pittman on 27-Jan-2015 09:48


[collapse]On 1/27/2015 2:51 AM, vitprof wrote:
Reply by vitprof

Dileep Dasa, great, thank you!

Stop receiving emails on this subject.

Flag this post as spam/abuse.




Hi,

If the KBase techniques do not resolve your problem, try tell the OE sql server to use a smaller sort buffer, maybe 500K  rather than 1M.

See  the indirectly referenced KBase article
http://knowledgebase.progress.com/articles/Article/P122494?popup=true

E.g,,       
-SQLTempBuff   500


This startup parameter
  iss given to the broker startup (the broker passes it on to  sql).

hope this help,                       ....steve pittman   [OE sql software architect]


[/collapse]

This thread is closed