cancel
Showing results for 
Search instead for 
Did you mean: 

SA 17 ST_CircularString function never returns

2,133

I have a case where a call to

NEW ST_CircularString()
runs indefinitely, and sometimes crashes the database engine. I'm using SQL Anywhere 17.0.0.1358, which AFAIK is the latest version of the Developer Edition available for download.

The problem can be reproduced with:

SELECT NEW ST_CircularString( 'CIRCULARSTRING(-79.397621622463 43.66867,-79.394128 43.6721636224626,-79.390634377537 43.66867,-79.394128 43.6651763775374,-79.397621622463 43.66867)', 1000004326);
A similar statement works:
SELECT NEW ST_CircularString( 'CIRCULARSTRING(-79.363632233035 43.686373,-79.360349 43.689656233035,-79.357065766965 43.686373,-79.360349 43.683089766965,-79.363632233035 43.686373)', 1000004326);

Sometimes when I run the query, SQL Central crashes. In one such case I submitted the Error Report, which was assigned the IDs: 2449151 2449152.

Anyone else seen this?

Accepted Solutions (1)

Accepted Solutions (1)

Former Member

It does not look like this is related to CR 794347. {that fix when tested does not prevent this} I can also reproduce this in 16 and it may be long standing edge case ... just exposed by your test.

It does seem to have something to do with precision. If I adjust the first and last points to be (-79.363632 43.686373) this behavior goes away. Given the nature of the projection involved the precision part may not be unexpected but some govenor should have kicked in eventually.

I will be submitting this shortly

Former Member
0 Kudos

Thanks Terry and Nick for reporting this. CR 798668 will be fixed in 12.0.1.4416, 16.0.0.2290, and 17.0.0.1493.

Answers (0)