Kbase P69967: SQL connection throws Memory violation (49) and brings down SQLSRV2 (2525)
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  11/11/2008 |
|
Status: Verified
SYMPTOM(s):
SQL connection throws Memory violation (49)
All SQL-92 clients are disconnected from remote server (2526)
SQLSRV2 server dies (2525)
SYSTEM ERROR: Memory violation. (49)
Disconnecting client 14 of dead server 1. (2526)
Disconnecting dead server 1. (2525)
PROGRESS stack trace
command line not initialized
dbut_uttrace()
dbExit()
drExitOnTerm()
_setitimer()
_sema_post()
_sema_post()
__1cJpsr_env_tJRDS_parse6M_i_()
FACT(s) (Environment):
Progress 9.1x
All Supported Operating Systems
CAUSE:
When a SQL keyword is unquoted in the query string, or any Table is specified more than once in a Query, the reference to that Table has to either be all double-quoted or they all have NOT to be double quoted.
SELECT address FROM PUB."customer", PUB."order" WHERE PUB."order"."cust-num" = PUB.customer."cust-num"; => Fails, because the first reference to "customer" table is double-quoted and the second is not double-quoted
CAUSE:
Bug# OE00101557
FIX:
Upgrage to OpenEdge 10.0B or later where the case sensitive string function has been enhanced.
Workaround:
Ensure that all SQL keywords, for example: ORDER, are quoted: PUB."order" and that every reference to any table that is referred to more than once in a query string is either always double-quoted, or never double-quoted.