on 2010 Sep 10 8:32 PM
A web application developed against and working fine in SA 11 is causing silent server crashes under version 12 (latest patch).
Crashes can be traced back to a series of stored procedures used in SELECT
statements, and joined (often using outer/cross apply, lateral statements) with other tables or procedures
All those procedures are using recursive CTEs after the model below:
create procedure DBA.sp_CMS_GetNode_Translations( in @site_id integer default null,in @language_id integer,in @workflow_id integer default null )
result(
site_id integer,
master_node_id integer,
node_id integer,
parent_id integer,
title nvarchar(500),
master_language_id integer,
language_id integer,
workflow_id integer )
begin
with recursive
original( site_id, master_node_id, node_id, parent_id, title, master_language_id, language_id, workflow_id, is_best_match ) as
(
(
select site_id,
node_id,
node_id,
parent_id,
coalesce(title,internal_name),
language_id,
language_id,
workflow_id,
0
from dba.vcms_nodes
where (site_id = @site_id or @site_id is null)
and master_id is null
and (@workflow_id is null or workflow_id = @workflow_id)
)
union all
(
select o.site_id,
o.node_id,
coalesce(t.node_id,o.master_node_id),
o.parent_id,
coalesce(t.title,t.internal_name,o.title),
master_language_id,
coalesce(t.language_id,o.language_id),
coalesce(t.workflow_id,o.workflow_id),
is_best_match+1
from original as o left outer join dba.vcms_nodes as t on t.master_id = o.master_node_id
and t.language_id = @language_id
where is_best_match = 0
and (@workflow_id is null or coalesce(t.workflow_id,o.workflow_id) = @workflow_id)
)
)
select site_id,master_node_id,node_id,parent_id,title,master_language_id,language_id,workflow_id
from original as o where is_best_match = 1
end
We tried connecting the web tier to the database using sajdbc4
first, then sajdbc
. Every single statement that includes a procedure of the type above causes the server to crash with a sibylline 'communication error' error message.
Running the same SELECT statements in ISQL sometime works, sometime doesn't.
Questions:
Request clarification before answering.
I apologize for the inconvenience - I don't believe you are doing anything wrong. In (almost) all cases Version 12 software should be backwards-compatible with Version 11, and nonetheless the server should not crash.
Sending crash dumps is outlined in the documentation in the section
SQL Anywhere Server - Database Administration » Maintaining your database » Troubleshooting SQL Anywhere database issues » Error reporting in SQL Anywhere
You can find it quickly in the online help by doing an index search for "dbsupport" or "crashes".
You can run dbsupport to upload the crash information, and at the same time open a case with technical support, making sure to pass on the crash identifier so we can match the uploaded files with your support case.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You can always report a bug for free using CaseXpress. The URL is http://case-express.sybase.com.
User | Count |
---|---|
52 | |
8 | |
5 | |
5 | |
5 | |
5 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.