远程Sybase数据库技术支持,联系手机:13811580958,QQ:289965371!

 

随着Sybase被完全整合到SAP下,Sybase原来的支持网站被SAP Support Portal取代。
只有购买了SAP服务的用户才能使用账号登录SAP Support Portal进行介质下载、补丁升级、报Incident等。
考虑到Sybase数据库的初学者或者没有购买原厂服务的Sybase客户情况,现提供SAP ASE/IQ/RS/SDK/SQL Anywhere/PB等产品的BUG信息。
在SAP Support Portal网站或者google上搜索Targeted CR List for ASE,可以看到针对不同版本的CR(CR表示Change Request)简单描述信息列表。
需要注意的是:Targeted CR List for ASE列出的CR虽然绝大多数是BUG,但有一些是更改需求。
以下提供SAP ASE/IQ/RS/SDK/SQL Anywhere/PB等产品的BUG信息!

如有问题,请联系我!

QQ :289965371 点击这里给我发消息
Email:
不仅仅包括BUG的详细描述信息,还包括首次报告BUG的平台、数据库版本以及BUG修复历史过程;有些BUG还提供了Workaround来临时解决该BUG带来问题。

 

CR:361187
CR Number:   361187
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
14 Jul 2004 Presently Not Targeted For Any Future Release Of This Product
Description
Feature Request - provide functionality to size system dbspace during dbinit and create database instead of using Alter dbspace afterwards



CR:361188
CR Number:   361188
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2369 13 Jul 2004 Fixed
9.0.1 1892 13 Jul 2004 Fixed
8.0.3 5003 13 Jul 2004 Fixed
Description
The collation 1250LATIN2 was missing case conversions for "Letter O with double acute" and "Letter U with double acute". As a result, the functions UPPER() and LOWER() would have failed to convert these letters to their corresponding case, and comparisons would also have failed to match these characters with other O and U characters when the case was different. This has now been fixed, but existing databases will need to be rebuilt to get the new conversions.



CR:361206
CR Number:   361206
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   6.0.02
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2369 14 Jul 2004 Fixed
9.0.1 1892 14 Jul 2004 Fixed
9.0.0 1337 14 Jul 2004 Fixed
8.0.3 5132 14 Jul 2004 Fixed
8.0.2 4447 14 Jul 2004 Fixed
Description
When run on Unix systems, the Data Source utility dbdsn, required write permission on the .odbc.ini file, even if just listing or reading the DSNs. This has been

fixed, now only read permission is required, unless the -d or -w options are used.



CR:361210
CR Number:   361210
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
2933 13 Oct 2004 Fixed
9.0.2 2529 13 Oct 2004 Fixed
9.0.1 1930 13 Oct 2004 Fixed
9.0.0 1372 13 Oct 2004 Fixed
Description
A SELECT INTO #temp statement, using a recursive view, may have caused the server to crash if used inside a stored procedure. This has been fixed.



For example:

create procedure P1( arg int )

begin

with recursive v( a, b ) as (

select T1.a,T1.b from T1 where T1.a = arg

union all

select T1.a,T1.b from T1 join v on(T1.a = v.b)

)

select * into #temptab from v;

end



CR:361307
CR Number:   361307
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2370 16 Jul 2004 Fixed
9.0.1 1892 16 Jul 2004 Fixed
9.0.0 1338 16 Jul 2004 Fixed
Description
Executing a CREATE DATABASE statement which contained a CASE clause could have failed as not executable, if the statement appeared in a .SQL file with other SQL statements or was executed interactively along with other statements. This has been fixed.



The problem only occurred when attempting to execute a CREATE DATABASE statement with other statements, as part of a batch, and affects DBISQL version 7.0.0 and later.



CR:361464
CR Number:   361464
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2376 19 Jul 2004 Fixed
9.0.1 1895 19 Jul 2004 Fixed
9.0.0 1340 19 Jul 2004 Fixed
8.0.3 5135 19 Jul 2004 Fixed
8.0.2 4450 19 Jul 2004 Fixed
Description
This change fixes several problems with the DBSCHEMA_INDEXES rowset, implemented by the sa_oledb_indexes stored procedure.



The COLLATION column was always empty. It now contains a 1 for ASCENDING ordering and a 2 for DESCENDING ordering.



The CLUSTERED column was always TRUE, even for a non-clustered index. This column now contain 0 unless the index is clustered, in which case it will contain a 1.



The INDEX_NAME column contained the additional string "(primary key)" when the index was based on a primary key. In the DBSCHEMA_PRIMARY_KEYS rowset (implemented by the sa_oledb_primary_keys stored procedure), the PK_NAME column does not contain this string.

Since the names were different, it was difficult to join the information in these two tables. Elsewhere the index name is reported using only the table name (in access plans for example). For these reasons, the INDEX_NAME column will no longer contain the string "(primary key)".



The following column names have been corrected:



FKTABLE_CAT is now FK_TABLE_CATALOG

FKTABLE_SCHEMA is now FK_TABLE_SCHEMA

PKTABLE_CAT is now PK_TABLE_CATALOG

PKTABLE_SCHEMA is now PK_TABLE_SCHEMA



These corrections are to the "oleschema.sql" file located in the "scripts" folder, which will be in effect for newly created databases. To implement the corrections to an existing database, connect to the database with Interactive SQL dbisql and run the contents of "oleschema.sql".



CR:361509
CR Number:   361509
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   5.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2371 16 Jul 2004 Fixed
9.0.1 2371 16 Jul 2004 Fixed
9.0.0 1338 16 Jul 2004 Fixed
8.0.3 5133 16 Jul 2004 Fixed
8.0.2 4448 16 Jul 2004 Fixed
7.0.4 3526 16 Jul 2004 Fixed
Description
Servers running on Windows systems, other than Windows 95, could have experienced database corruption if the system crashed due to an OS or hardware problem (or it was powered off unexpectedly), and write caching was enabled on the drive containing the database files.



A work around would be to disable write caching in the Device Manager, via the Disk Properties tab in the Properties dialog, for the drives in question. (This might be necessary in any case for IDE drives).



CR:361511
CR Number:   361511
Product Name:   MobiLink
Product Component:   Sample
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2369 19 Jul 2004 Fixed
Description
The QAnywhere sample databases qanyserv.db and qanywhere.db were initialized for Windows machines with default collation sequence: 1252LATIN1 (Code Page 1252, Windows Latin 1, Western), and were installed even on non-English machines. This has been fixed, these databases now have collations that matches the default for the machine on which they are installed.



A workaround for is to re-create the above databases after the install has completed. To do this, change to the appropiate directory and enter the following, (<dbfile is either qanyserv.db or qanywhere.db):



dberase -y <dbfile>

dbinit <dbfile>



CR:361512
CR Number:   361512
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2383 16 Jul 2004 Fixed
9.0.1 1900 03 Aug 2004 Fixed
9.0.0 1344 03 Aug 2004 Fixed
8.0.3 5140 03 Aug 2004 Fixed
8.0.2 4454 03 Aug 2004 Fixed
Description
If a stored procedure contained a CREATE VIEW statement, the second execution of the CREATE VIEW statement may have failed with a "column not found". This has been fixed.



A workaround is to use EXECUTE IMMEDIATE to create the view.



CR:361517
CR Number:   361517
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2370 19 Jul 2004 Fixed
9.0.1 1892 19 Jul 2004 Fixed
Description
The QAnywhere client import libraries for CE platforms were missing from the install. This has been corrected, they are now placed in QAnywhere\ce\arm.30\lib and QAnywhere\ce\x86.30\lib. This affects Windows CE C++ application development. Windows CE .NET development was not affected.



CR:361518
CR Number:   361518
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2371 19 Jul 2004 Fixed
9.0.1 1893 19 Jul 2004 Fixed
9.0.0 1339 19 Jul 2004 Fixed
Description
On Windows XP (or other Windows versions with the Luna look, ie Windows 2003) with Luna-style GUI elements enabled, as opposed to Classic Windows elements, the hard-copy printout of the query plan would have been unreadable. The DFO tree would have been displayed, but each operator would be a solid-filled coloured box. This has been fixed.



A workaround is to temporarily change the Display Properties of the machine to use the Windows Classic style while working with ISQL.



CR:361599
CR Number:   361599
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2372 20 Jul 2004 Fixed
9.0.1 1893 20 Jul 2004 Fixed
9.0.0 1339 20 Jul 2004 Fixed
8.0.3 5134 20 Jul 2004 Fixed
8.0.2 4448 20 Jul 2004 Fixed
Description
Executing a STOP DATABASE statement which attempted to stop a database running on a server to which you were not currently connected, would have resulted in dbisql failing with an internal error. This has been fixed.



CR:361965
CR Number:   361965
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2376 21 Jul 2004 Fixed
9.0.1 1895 21 Jul 2004 Fixed
9.0.0 1341 21 Jul 2004 Fixed
Description
On Unix systems, the server use 100% of the CPU while shutting down unconditionally if there were still active TCP/IP connections, although the server does eventually shut down. This has fixed.



CR:361999
CR Number:   361999
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2377 21 Jul 2004 Fixed
9.0.1 1895 21 Jul 2004 Fixed
9.0.0 1341 21 Jul 2004 Fixed
8.0.3 5136 21 Jul 2004 Fixed
8.0.2 4450 21 Jul 2004 Fixed
Description
Index statistics for SYSATTRIBUTE could have become out of date, resulting in errors being found when running the Database Validation utility dbvalid. This problem has now been resolved.



CR:362004
CR Number:   362004
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2377 22 Jul 2004 Fixed
9.0.1 1895 22 Jul 2004 Fixed
9.0.0 1341 22 Jul 2004 Fixed
Description
When a server registered its IP addresses in LDAP, it included the localhost address as well (127.0.0.1), which was not useful to clients in finding the server. This address will now no longer be included when the server registers with LDAP.



CR:362011
CR Number:   362011
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2380 22 Jul 2004 Fixed
9.0.1 1897 22 Jul 2004 Fixed
9.0.0 1342 22 Jul 2004 Fixed
8.0.3 5138 22 Jul 2004 Fixed
8.0.2 4452 22 Jul 2004 Fixed
Description
The OLEDB provider ASAProv assumed that DBTYPE_BOOL values were 1 byte long. So for database columns of type BIT, it would indicate that only 1 byte needed to be allocated for a DBTYPE_BOOL column. This was incorrect, since DBTYPE_BOOL values are actually 2 bytes long. Any consumer application that fetched 2 bytes for a DBTYPE_BOOL column, (such as applications based on Borland's Delphi), and examined both bytes, would have obtained an incorrect result. Also columns adjacent to DBTYPE_BOOL columns will overlap in memory. This has been fixed.



CR:362015
CR Number:   362015
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2378 22 Jul 2004 Fixed
9.0.1 1896 22 Jul 2004 Fixed
9.0.0 1341 22 Jul 2004 Fixed
8.0.3 5136 22 Jul 2004 Fixed
8.0.2 4451 22 Jul 2004 Fixed
Description
The MobiLink Server would not have detected update conflicts, if the server was running with the command line option -s n (where n was greater than 1) or without -s at all, and the consolidated database was a Microsoft SQL Server or Oracle database. Also, the synchronization had to have been a statement-based upload, with no upload_fetch script, and an upload stream had to have contained updates that had an unsatisfied WHERE clause in the consolidated database. These updates would have failed due to the unsatisfied WHERE clause, but the MobiLink server would have ignored these failures without giving any error or trying to resolve these conflicts. Now if the batch contains updates and the number of affected rows doesn't match the number of rows applied, the server will roll back the operations and try them again using single-row mode.



CR:362053
CR Number:   362053
Product Name:   MobiLink
Product Component:   Monitor
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2378 22 Jul 2004 Fixed
9.0.1 1896 22 Jul 2004 Fixed
9.0.0 1341 22 Jul 2004 Fixed
8.0.3 5136 22 Jul 2004 Fixed
8.0.2 4451 22 Jul 2004 Fixed
Description
The MobiLink Monitor was reporting the wrong number of uploaded bytes. The Monitor would most often have reported the actual value plus one, but it could also have reported even larger values. This has been corrected.



CR:362144
CR Number:   362144
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2378 23 Jul 2004 Fixed
9.0.1 1896 23 Jul 2004 Fixed
9.0.0 1341 23 Jul 2004 Fixed
Description
The Message Viewer was capturing CTRL-A keystrokes when it did not have focus. This has been fixed.



CR:362197
CR Number:   362197
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Generic
Original Version:   6.0.02
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2379 23 Jul 2004 Fixed
9.0.1 1896 23 Jul 2004 Fixed
9.0.0 1342 23 Jul 2004 Fixed
8.0.3 5137 23 Jul 2004 Fixed
8.0.2 4451 23 Jul 2004 Fixed
Description
If a multi-threaded client application had more than one connection (on more than one thread) logging to the same log file, the logged entries from the connections could have been mixed up. Specifically, several timestamps may have appeared together, followed by the text of the messages. Also, in 9.x clients, the date stamp at the top of the file would always have used lowercase English strings. This has been fixed.



CR:362198
CR Number:   362198
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Generic
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2379 23 Jul 2004 Fixed
9.0.1 1896 23 Jul 2004 Fixed
9.0.0 1342 23 Jul 2004 Fixed
8.0.3 5137 23 Jul 2004 Fixed
8.0.2 4451 23 Jul 2004 Fixed
Description
In the COLUMNS, PROCEDURE_PARAMETERS and PROCEDURE_COLUMNS rowsets, the CHARACTER_MAXIMUM_LENGTH column contained incorrect values for BIT and LONG VARCHAR/LONG VARBINARY columns and parameters. This column should contain the maximum possible length of a value in the column. For character, binary, or bit columns, this is one of the following:

1) The maximum length of the column in characters, bytes, or bits, respectively, if one is defined. For example, a CHAR(5) column in an SQL table has a maximum length of five (5).

2) The maximum length of the data type in characters, bytes, or bits, respectively, if the column does not have a defined length.

3) Zero (0) if neither the column nor the data type has a defined maximum length.

4) NULL for all other types of columns.

As well, the CHARACTER_OCTET_LENGTH column contained incorrect values for LONG VARCHAR/LONG VARBINARY columns and parameters. The CHARACTER_OCTET_LENGTH column should contain the maximum length in bytes of the parameter if the type of the parameter is character or binary. A value of zero means the parameter has no maximum length. NULL for all other types of parameters.



In the PROCEDURE_COLUMNS and PROCEDURE_PARAMETERS rowsets, the column name should have been CHARACTER_OCTET_LENGTH rather than CHAR_OCTET_LENGTH.



In the PROVIDER_TYPES rowset, the COLUMN_SIZE column contained incorrect values for LONG VARCHAR/LONG VARBINARY types.



These problems have been corrected and will appear in the "oleschema.sql" file located in the "scripts" folder once the EBF has been applied. To implement the corrections to an existing database, connect to the database with Interactive SQL (dbisql) and run the contents of "oleschema.sql".



CR:362207
CR Number:   362207
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Generic
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2379 26 Jul 2004 Fixed
9.0.1 1896 26 Jul 2004 Fixed
9.0.0 1342 26 Jul 2004 Fixed
8.0.3 5137 26 Jul 2004 Fixed
8.0.2 4451 26 Jul 2004 Fixed
Description
In the FOREIGN_KEYS rowset (implemented by the sa_oledb_foreign_keys stored procedure), the DEFERRABILITY column contained the values 5 or 6. This column should contain one of the following:



DBPROPVAL_DF_INITIALLY_DEFERRED 0x01

DBPROPVAL_DF_INITIALLY_IMMEDIATE 0x02

DBPROPVAL_DF_NOT_DEFERRABLE 0x03



These corrections will appear in the "oleschema.sql" file located in the "scripts" folder once the EBF has been applied. To implement the corrections to an existing database, connect to the database with Interactive SQL and load and run the contents of "oleschema.sql".



CR:362219
CR Number:   362219
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2379 23 Jul 2004 Fixed
9.0.1 1896 26 Jul 2004 Fixed
Description
With Server Initiated Synchronization, the upload tracking synchronization could have occurred up to a minute after a _BEST_IP_CHANGED_ internal message was issue by the Listener. This latency has now been removed, although the 1 minute retry attempt is unchanged.



CR:362220
CR Number:   362220
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2383 26 Jul 2004 Fixed
9.0.1 1900 29 Jul 2004 Fixed
9.0.0 1343 29 Jul 2004 Fixed
8.0.3 5139 29 Jul 2004 Fixed
8.0.2 4454 29 Jul 2004 Fixed
7.0.4 3528 29 Jul 2004 Fixed
Description
If another transaction attempted to query or modify a table while a the fast form of TRUNCATE TABLE was executing on the same table, the server could have failed an assertion, and in some cases, possibly corrupted the database. This was not likely to occur on single processor Windows platforms. This problem has been corrected.



CR:362221
CR Number:   362221
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2379 27 Jul 2004 Fixed
9.0.1 1896 27 Jul 2004 Fixed
Description
With Server Initiated Synchronization, the Listener may have failed to expand the $adapters action variable to a useful adapter name, and left it as an empty string for some network adapters. An alternative of finding the name of the adapter has now been added and in the worst case an active adapter will be named as "unknown adapter".



CR:362226
CR Number:   362226
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2379 28 Jul 2004 Fixed
9.0.1 1896 28 Jul 2004 Fixed
9.0.0 1342 28 Jul 2004 Fixed
8.0.3 5137 28 Jul 2004 Fixed
8.0.2 4451 28 Jul 2004 Fixed
Description
On Linux systems, getting information about a table's primary key, by clicking the 'Details' button on the Property dialog, would have caused a ClassCastException. This is now fixed.



CR:362311
CR Number:   362311
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2393 26 Jul 2004 Fixed
9.0.1 1904 10 Aug 2004 Fixed
8.0.3 5143 10 Aug 2004 Fixed
8.0.2 4451 10 Aug 2004 Fixed
Description
When estimating the selectivity of a predicate of the form "column = (correlated subselects)", the server was treating the predicate as "column = (single value)". This assumption could have lead to overly low selectivity estimates resulting in poor plans. In reality, the correlated subselect can cause a large number of values to be compared with the column, resulting in many rows.



Now, the server will use a "guess" estimate of 50% for the selectivity of these predicates.



CR:362312
CR Number:   362312
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2381 28 Jul 2004 Fixed
9.0.1 1898 28 Jul 2004 Fixed
9.0.0 1343 28 Jul 2004 Fixed
8.0.3 5138 28 Jul 2004 Fixed
8.0.2 4453 28 Jul 2004 Fixed
Description
The restructuring of column statistics in the server could have caused memory corruption, which can result in various symptoms, including server crashs and assertions. The chances of this problem happening was remote. It could only have occurred if the memory allocator returned the same memory as that used in a previous invocation of the restructuring of the same histogram. This problem has now been resolved.



CR:362356
CR Number:   362356
Product Name:   SQL Anywhere
Product Component:   JDBC Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2380 28 Jul 2004 Fixed
9.0.1 1897 28 Jul 2004 Fixed
9.0.0 1342 28 Jul 2004 Fixed
8.0.3 5138 28 Jul 2004 Fixed
8.0.2 4452 28 Jul 2004 Fixed
Description
While connected to a multi-byte character set database with the iAnywhere JDBC Driver, executing a procedure whose result set was defined to have a varchar column, but the size of the column in the definition was too small, could have resulted in an "Out of memory" exception. This problem has now been fixed.



For example:



CREATE PROCEDURE test()

result( c1 varchar(254) )

begin

select repeat( 'abcdef', 1000 )

end



Notice that a varchar( 254 ) column is much too small to hold the result of repeat( 'abcdef', 1000 ). In this case, executing the procedure test would have resulted in an "Out of memory" exception.



CR:362415
CR Number:   362415
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2381 28 Jul 2004 Fixed
9.0.1 1897 28 Jul 2004 Fixed
Description
With Dynamic SQL, memory could have been corrupted on Unicode implementations when executing CREATE TABLE or CREATE INDEX statements. This is now fixed.



CR:362497
CR Number:   362497
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2382 28 Jul 2004 Fixed
9.0.1 1898 28 Jul 2004 Fixed
9.0.0 1343 28 Jul 2004 Fixed
8.0.3 5139 28 Jul 2004 Fixed
8.0.2 4453 28 Jul 2004 Fixed
Description
The OUTPUT statement could have failed to write any rows to a file, even if there were rows to write, if the "Output_format" option was set to an invalid value. Now, it is impossible to set the "Output_format" option to an invalid value. When connecting to a database in which the option has been set to a bad value, the bad value is ignored and the default (ASCII) is assumed.



CR:362585
CR Number:   362585
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2383 30 Jul 2004 Fixed
9.0.1 1899 30 Jul 2004 Fixed
9.0.0 1343 30 Jul 2004 Fixed
8.0.3 5139 30 Jul 2004 Fixed
8.0.2 4454 30 Jul 2004 Fixed
Description
Queries that used a multi-column index could have returned incorrect results. For this to have occurred, all of the following must have been true:

- The index must have been comparison-based.

- One of the first few columns being indexed must have been a short character (or binary) column [the column must have been fully hashed]. This column must not have been the last column being indexed.

- The query must have contained a comparison involving this column [say with domain char(n)] and a string s with length > n whose n-byte prefix appeared as a value in the column.



This problemhas now been corrected.



CR:362597
CR Number:   362597
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   7.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2381 29 Jul 2004 Fixed
9.0.1 1898 29 Jul 2004 Fixed
9.0.0 1342 29 Jul 2004 Fixed
8.0.3 5138 29 Jul 2004 Fixed
Description
It was possible for the MobiLink server to have crashed while doing secure synchronizations. This has been fixed.



CR:362722
CR Number:   362722
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2399 16 Aug 2004 Fixed
9.0.1 1906 16 Aug 2004 Fixed
9.0.0 1349 16 Aug 2004 Fixed
Description
The installer for the 9.0.1 1883 EBF made a call to a function that is not implemented on Windows NT, and as a result generated the error:



"The procedure entry point, Module32Next could not be located in the dynamic link library KERNEL32.dll".



This error is typically reported when the version of the DLL found does not match the expected version, or the function has not been exported from the DLL. In this case, the problem was related to the later, as "Module32Next" is not a valid function on Windows NT. The code has been changed to only call this function if it exists.



CR:362723
CR Number:   362723
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2383 29 Jul 2004 Fixed
9.0.1 1899 29 Jul 2004 Fixed
Description
When running on linux systems using the 2.6.x kernel, Core files generated when the server crashed, would have contained only the stack trace of the thread causing the fault. This has been fixed. Core files will now have full stack trace information for all threads. On Linux 2.4.x kernels though, the core file will continue to contain only the stack trace of the thread responsible for the fault.



CR:362725
CR Number:   362725
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2383 30 Jul 2004 Fixed
9.0.1 1899 30 Jul 2004 Fixed
9.0.0 1343 30 Jul 2004 Fixed
8.0.3 5139 30 Jul 2004 Fixed
Description
Some SSL clients could have rejected certificates generated with the Certificate Generation utility gencert. Beginning with version 8.0.2, gencert added an extended key usage field to certificates it generated. Since this does not seem to be accepted universally, it has been removed.



CR:362727
CR Number:   362727
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2392 03 Aug 2004 Fixed
9.0.1 1902 09 Aug 2004 Fixed
Description
The server could have evaluated the LIKE predicate incorrectly for some patterns containing multiple wild card characters. In order for the incorrect answer to have been computed, the search pattern must have been "simple", containing % as the only wild card character, but with multiple instances. For example, the predicate " '1.1.' LIKE '1.%.%.' " would have incorrectly evaluated to TRUE. The server will now compute the correct answer.



CR:362728
CR Number:   362728
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2383 29 Jul 2004 Fixed
9.0.1 1898 29 Jul 2004 Fixed
9.0.0 1343 29 Jul 2004 Fixed
8.0.3 5139 29 Jul 2004 Fixed
Description
Turning on or off warnings in the Preferences dialog from Tools menu, (Tools->Adaptive Server Anywhere 9->Preferences - 'Confirm deletions when editing table') would have had no effect when table data was being edited. This has been fixed.



CR:362748
CR Number:   362748
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1898 30 Jul 2004 Fixed
Description
When launched on Windows CE systems, the QAnywhere Agent qaagent.exe, would have displayed a continuous "spinning wheel" wait cursor. This has been fixed, the wait cursor now appears briefly, and then disappears.



CR:362752
CR Number:   362752
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1899 30 Jul 2004 Fixed
Description
When the QAnywhere Agent was launched for the first time, if a QAnywhere client application was concurrently polling for messages, the agent could have hung during start up. This scenario occurred when the QAnywhere Agent and the QAnywhere client application were both connecting to a message store in an already running database server. This has been fixed, the QAManager/QATransactionalManager Open() methods now fail if the message store has not been fully initialized. The error code returned in this case is QAError::COMMON_MSG_STORE_NOT_INITIALIZED. As well, a new command line option "-si" (store initialize) has been added to the QAnywhere Agent. This switch tells the qaagent to initialize a database as a QAnywhere message store, and exit. To solve the original problem, do the following in this order: (1) start the database server, (2) invoke qaagent with -si to initialize the message store, (3) start the QAnywhere client application that polls for messages, (4) invoke qaagent when it is desired to transfer messages to/from the MobiLink server.



CR:362803
CR Number:   362803
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2384 03 Aug 2004 Fixed
9.0.1 1900 03 Aug 2004 Fixed
9.0.0 1343 03 Aug 2004 Fixed
8.0.3 5140 03 Aug 2004 Fixed
8.0.2 4454 03 Aug 2004 Fixed
Description
If the help window was opened and closed, and then Sybase Central was minimized, the help window would have been reopened when Sybase Central was then maximized. Note, this same problem affected Interactive SQL dbisql, as well. This has been fixed.



CR:362847
CR Number:   362847
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2384 03 Aug 2004 Fixed
Description
If the argument to the isnumeric() function was an empty string, or a string containing only blanks, the function would have returned the value 1 instead of 0. The function will now return the value 0 in these cases.



CR:362860
CR Number:   362860
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2384 03 Aug 2004 Fixed
9.0.1 1900 03 Aug 2004 Fixed
9.0.0 1344 03 Aug 2004 Fixed
Description
On slower machines, the Index Consultant may have reported that the analysis was unable to complete. In this case, the error dialog would have appeared immediately after tuning was started. This has been fixed by waiting until the dialog class that reports on the tuning process is loaded before proceeding. A workaround is to wait approximately two seconds between each mouse button click on the tuning parameter dialog pages (that is, after workload selection/capture dialog).



CR:362895
CR Number:   362895
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2407 23 Aug 2004 Fixed
9.0.1 1909 23 Aug 2004 Fixed
9.0.0 1353 23 Aug 2004 Fixed
8.0.3 5149 23 Aug 2004 Fixed
8.0.2 4463 23 Aug 2004 Fixed
Description
In some cases, the selectivity estimate for a predicate '<column> IS NULL' could have been set incorrectly to 0. This could have lead the query optimizer to select poor execution plans, for example, selecting an index to satisfy an IS NULL predicate instead of another, more selective predicate.



For this problem to have occurred, a query must have contained a predicate of the form:

T.col = <expr>

The expression <expr> must have been an expression whose value was not known at query open time. For example, <expr> could have been a column of another table, or it could have been a function or expression that was not evaluated at optimization time. The predicate must have been the first predicate evaluated for the associated table scan, and the table T must have been scanned once with the value of <expr> being NULL. In these circumstances, the selectivity of 'T.col IS NULL' would be incorrectly set to 0. This has been fixed.



If an application opened a cursor over a query that contained an index scan with a single column in the index being searched for equality, the selectivity estimate could have been lowered incorrectly if the application scrolled the cursor using absolute fetches and did not visit all of the rows of the result set but ended the scan after the last row of the result set. This problem would have resulted in selectivity values being stored that were lower than expected, and could have lead the query optimizer to select poor execution plans by picking an index on this column instead of a better index. This problem has also been fixed.



CR:362936
CR Number:   362936
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2384 04 Aug 2004 Fixed
9.0.1 1902 04 Aug 2004 Fixed
9.0.0 1345 04 Aug 2004 Fixed
Description
I a query was executed that caused errors as rows were fetched, the same error could have been reported multiple times. Now, identical errors are reported only once per result set.



CR:363062
CR Number:   363062
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Solaris
Original Version:   4.3.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2388 06 Aug 2004 Fixed
9.0.1 1902 06 Aug 2004 Fixed
Description
When running on Linux or Solaris systems, saving a stored procedure or function as a SQL file would have resulted in the file being written with an extension of ".null" or ".null.sql", if "All files (*.*)" had been selected in the "Files of Type" combo box. This has now been fixed.



CR:363177
CR Number:   363177
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2393 09 Aug 2004 Fixed
9.0.1 1903 09 Aug 2004 Fixed
9.0.0 1347 09 Aug 2004 Fixed
8.0.3 5143 09 Aug 2004 Fixed
8.0.2 4457 09 Aug 2004 Fixed
Description
An application that created multiple threads, and opened and closed pooled connections on each thread, could possibly have had the threads become deadlocked, causing come connections to fail, if the 'Max Pool Size' was smaller than the number of threads. This problem has been fixed.



CR:363211
CR Number:   363211
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2441 23 Sep 2004 Fixed
9.0.1 1924 23 Sep 2004 Fixed
9.0.0 1366 23 Sep 2004 Fixed
8.0.3 5162 23 Sep 2004 Fixed
8.0.2 4477 23 Sep 2004 Fixed
Description
A FillError exception was not thrown when an error occurred during a fill operation of the ASADataAdapter object. Now, when an error occurs during a fill operation, the adapter will call the FillError delegate. If Continue was set to true, the adapter will continue the fill operation. Otherwise, it will throw the exception.



CR:363251
CR Number:   363251
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2393 06 Aug 2004 Fixed
9.0.1 1903 06 Aug 2004 Fixed
9.0.0 1347 06 Aug 2004 Fixed
8.0.3 5143 06 Aug 2004 Fixed
8.0.2 4457 06 Aug 2004 Fixed
Description
When using the FORWARD TO statement in interactive mode (i.e. issuing a "FORWARD TO <server>" statement first and then issuing individual statements, all of which are to be executed on the remote server), there was a pobbibility that one, or all, of the statements would have been executed locally instead of remotely. There was also a pobbibility that the statements will not have been executed at all. This problem was most likely to have occurred when connected via jConnect, or if the remote server name had a space in it, or any character that would required quoting. This problem has now been fixed.



CR:363313
CR Number:   363313
Product Name:   MobiLink
Product Component:   Streams
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2392 06 Aug 2004 Fixed
9.0.1 1903 06 Aug 2004 Fixed
Description
When a device was placed in the cradle and synchronization initiated, the ActiveSync provider could have erroneously reported that no applications had been registered for synchronization. This has been fixed.



CR:363333
CR Number:   363333
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2392 06 Aug 2004 Fixed
9.0.1 1908 19 Aug 2004 Fixed
Description
Using the Database Unload utility dbunload with the -an command line option to reload a database into a new file, could have failed if the character set of the OS was different from the character set of the database being reloaded. Failures could have taken the form of a syntax error during the execution of a CREATE DATABASE statement, or a mangled filename for the newly created database. This problem has been corrected.



CR:363394
CR Number:   363394
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2398 06 Aug 2004 Fixed
9.0.1 1903 06 Aug 2004 Fixed
Description
A procedure call that used a WITH clause and a column of type CHAR, VARCHAR, BINARY, or VARBINARY with no length argument, would have defaulted to the maximum size for the type, rather than 1.



For example:



select c from p() with (c char)



would have returned a column of type char(32767), rather than the correct type of char(1). A NUMERIC column, with no precision or scale argument, would have defaulted to (255,0) rather than the database defaults. In addition, a server crash may have occured when attempting to create a procedure containing a SELECT that had this problem. These problems have now been fixed.



CR:363397
CR Number:   363397
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2392 09 Aug 2004 Fixed
9.0.1 1903 09 Aug 2004 Fixed
9.0.0 1346 09 Aug 2004 Fixed
8.0.3 5142 09 Aug 2004 Fixed
8.0.2 4457 09 Aug 2004 Fixed
Description
The server could possibly have crashed on shutdown, if the Java VM had been used. This would occurred if the VM needed to load additional classes during shutdown. Now, failure to load a new class during shutdown is handled by the Java's exception mechanism and the VM will still shutdown.



CR:363426
CR Number:   363426
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2393 06 Aug 2004 Fixed
9.0.1 1903 06 Aug 2004 Fixed
Description
The following invalid command would have caused the Listener utility to crash, instead of bringing up the usage text:

dblsn.exe -l

This has been fixed.



CR:363428
CR Number:   363428
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Linux
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
2954 16 Nov 2004 Fixed
9.0.2 2531 16 Nov 2004 Fixed
9.0.1 1949 16 Nov 2004 Fixed
Description
When run on Unix systems, the dbisql command line option -onerror (Override ON_ERROR option) was not being recognized. This has now been corrected.



CR:363434
CR Number:   363434
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2405 19 Aug 2004 Fixed
9.0.1 1908 19 Aug 2004 Fixed
9.0.0 1352 19 Aug 2004 Fixed
Description
Interactive SQL dbisq, (and Sybase Central), may have appeared to not start when run on a machine connected via Terminal Services / Remote Desktop. In fact, these programs do start, but their windows appear on the console (i.e. the physical machine) instead of the remote desktop. This problem only occurred if the fast launcher option for the program was enabled (which is the default). The programs now detect whether they are running within the context of a remote desktop, and if that's the case, they do NOT use the fast launcher.



CR:363615
CR Number:   363615
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2396 09 Aug 2004 Fixed
9.0.1 1904 09 Aug 2004 Fixed
Description
Attempting to use GROUPING SETS, CUBE or ROLLUP, in the GROUP BY clause of a remote query that would have been executed in full passthrough mode, would have resulted in an incorrect GROUP BY clause being sent to the remote server. It did not contain any GROUPING SETS, CUBE or ROLLUP clauses. This problem has now been fixed.



CR:363625
CR Number:   363625
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2371 10 Aug 2004 Fixed
9.0.1 1893 10 Aug 2004 Fixed
9.0.0 1338 10 Aug 2004 Fixed
8.0.3 5133 10 Aug 2004 Fixed
8.0.2 4448 10 Aug 2004 Fixed
Description
A situation where a client request could have potentially crashed the ISAPI redirector as been fixed.



CR:363708
CR Number:   363708
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
7.0.4 3529 10 Aug 2004 Fixed
Description
The fix for Engineering Case 338114 was meant to handle creation of proxy tables to non-ASA remotes when the database name contained a space, or any other character that required quoting. Unfortunately, that fix introduced a bug which resulted in proxy tables not being created with certain remotes, under certain conditions, which vary significantly. This problem has been corrected.



CR:363722
CR Number:   363722
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2397 13 Aug 2004 Fixed
9.0.1 1904 13 Aug 2004 Fixed
Description
The access plan for the cursor in a FOR statement, when defined by a SELECT query block, was not being cached and reused, when used inside a stored procedure or a function. This has now been fixed.



In the example below, the SELECT query block will now be considered for caching:



for for_q as c_q dynamic scroll cursor for

select p.quantity as Q

from product p, sales_order_items s

where s.quantity = p.quantity

order by Q

do

set V = Q

end for;



Please see the following documentation for more information:

ASA SQL User's Guide

Query Optimization and Execution

How the optimizer works

Access plan caching



CR:363739
CR Number:   363739
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Solaris
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2399 13 Aug 2004 Fixed
9.0.1 1906 13 Aug 2004 Fixed
Description
If the user DBA was removed, (ie. REVOKE CONNECT FROM DBA), and another user assigned dba authority, the Database Upgrade utility dbupgrad, would have failed with the following error:



Error in file upgrad60.sql at line 2682 with sqlcode -140

SQL error (-140) -- User ID 'DBA' does not exist



The user DBA was unnecessarily being granted select authority on some tables. These GRANT statements have now been removed.



CR:363754
CR Number:   363754
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2397 13 Aug 2004 Fixed
9.0.1 1905 13 Aug 2004 Fixed
9.0.0 1348 13 Aug 2004 Fixed
Description
On non-x86 Unix platforms, the server could have crashed on startup if one of the databases was strongly encrypted but an incorrect encryption key was specified. This has now been fixed.



CR:363756
CR Number:   363756
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2206 13 Aug 2004 Fixed
9.0.1 1905 13 Aug 2004 Fixed
Description
If a subquery contained an outer reference to a column from a view that was part of the null-supplying side of an outer join, and the view defined the column as a constant value, the server could have crashed when trying to build a hash join. This has been fixed.



CR:363767
CR Number:   363767
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2529 22 Sep 2004 Fixed
9.0.1 1924 22 Sep 2004 Fixed
9.0.0 1366 22 Sep 2004 Fixed
8.0.3 5162 22 Sep 2004 Fixed
8.0.2 4477 22 Sep 2004 Fixed
Description
Deleting or updating a large number of rows could have taken longer than a comparable operation done with a server from version 8.0.1 or earlier. This would only have been observed when using a database created with version 8.0.0 or later. This has been corrected.



CR:363826
CR Number:   363826
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2398 13 Aug 2004 Fixed
9.0.1 1912 13 Aug 2004 Fixed
Description
Every time the synchronization of messages between a QAnywhere client and server failed, the client log file would have grown roughly in proportion to the size of the messages that failed to be synchronized. For limited memory devices, this could be a problem, especially if the QAnywhere client synchronization policy was "scheduled", with a small synchronization interval. In this scenario, the log file would grow in proportion to the outstanding messages every scheduled interval until a successful synchronization occurred. Once the successful synchronization occurred however, the log file would have been truncated down to a small size. This problem has now been corrected.



CR:363861
CR Number:   363861
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2399 16 Aug 2004 Fixed
9.0.1 1906 16 Aug 2004 Fixed
8.0.3 5145 16 Aug 2004 Fixed
8.0.2 4460 16 Aug 2004 Fixed
Description
A query such as the following:



select 'a', 'a' from employee group by 'a', 'a'



where a constant string appears in both the select list and the GROUP BY clause, could have caused the server to crash. This has been fixed.



CR:363883
CR Number:   363883
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2398 16 Aug 2004 Fixed
9.0.1 1901 16 Aug 2004 Fixed
Description
If a query has sargable predicates of the form "T.col = constant" or "T.col IS NULL" for at least two leading columns of an index, the estimate of number of rows returned is now computed by probing the index.



For example, given the following index:



create index NAME_COLOR on product( name, color);



the estimated number of rows returned by the query:



select count(*) from product

where color = 'white'

and name ='tee shirt'



with "color = 'white'" and "name ='tee shirt'" is computed by probing the index NAME_COLOR with the tuple ('tee shirt', 'white').



Note, if the index does not exist, the estimated number of rows with "color = 'white'" and "name ='tee shirt'" is computed as: [ size of table 'product'] X [selectivity of the predicate "color = 'white'"] X [selectivity of the predicate "name = 'tee shirt'"]. Such computation, unless the data is completely uncorrelated, can be inaccurate.



CR:363884
CR Number:   363884
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2398 16 Aug 2004 Fixed
9.0.1 1901 16 Aug 2004 Fixed
Description
If the access plan for an outer join's null-supplying side provided an order for the columns in the ON clause, and any of the columns in the ON clause was equated with a constant, the join operator JMO was preceded by an unnecessary SORT. This has been fixed.



Example:



The query below:



select *

from dbo.rowgenerator R1 left outer join rowgenerator R2 ON ( R2.row_num = R1.row_num and R2.row_num = 10 )

where R1.row_num = 10



may have had the access plan:" R1<RowGenerator> JMO [ SORT [R2<RowGenerator> ]]". The SORT was unnecessary as all the rows generated by the null-supplying side "R2<RowGenerator> " had R2.row_num equal to 10, hence it was ordered already on R2.row_num column. Now, the plan should be " R1<RowGenerator> JMO [ R2<RowGenerator> ]".



CR:363956
CR Number:   363956
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   8.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.1 3157 13 Aug 2004 Fixed
Description
A stored procedure whose definition contained more than 255 characters, would not have been written correctly to the reload.sql file. This problem has been corrected.



CR:363990
CR Number:   363990
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2399 16 Aug 2004 Fixed
9.0.1 1906 16 Aug 2004 Fixed
Description
The MobiLink server now recognizes the DataDirect 4.2 native Oracle ODBC driver. This driver is required when an Oracle consolidated database uses a character set (eg. JA16SJISTILDE) that is unknown to the wire-protocol ODBC driver.



CR:364006
CR Number:   364006
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2399 16 Aug 2004 Fixed
Description
MobiLink Synchronizations would have failed if the consolidated database was not Adaptive Server Anywhere, and either of the LANG or LC_MESSAGES environment variables was set to something other than en_US. The MobiLink server log would ahve shown the error as follows:



Error: [-10002] ODBC: [DataDirect][ODBC 20101 driver]6008 (ODBC State = 4, Native error code = 0, Column or parameter #3)



This problem has been corrected.



CR:364059
CR Number:   364059
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2408 19 Aug 2004 Fixed
9.0.1 1908 19 Aug 2004 Fixed
Description
If the server was was shut down in the middle of capturing a workload for the Index Consultant, it could have hung with 100% CPU usage. This has been fixed.



Note that a DBA can determine whether or not capturing is in progress by viewing the server console.



CR:364204
CR Number:   364204
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   6.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2403 18 Aug 2004 Fixed
9.0.1 1907 18 Aug 2004 Fixed
Description
If an application attempted to get the metadata of a result set from a remote query, the remote tables would have had names like vt_1, vt_2, ... instead of the proxy table name. The metadata will now have the proxy table name. As a result, ODBC, OLEDB and JDBC applications can now use this proper metadata information to prepare the correct update/delete statements. For example, if a query selecting a set of rows from a single proxy table was executed in DBISQL, the user would not be able to use the table editing feature in DBISQL because the table name for the result columns would be vt_1 instead of the proxy table name. Now with this fix, users can now edit result sets from a single proxy table using DBISQL.



CR:364205
CR Number:   364205
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   6.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1906 17 Aug 2004 Fixed
Description
The "backlog" parameter can now be used with the MobiLink synchronization server for HTTP and HTTPS synchronization streams. This new parameter will indicate the maximum size of the new connection backlog. While the backlog is full, MobiLink will reject all new synchronization requests, causing synchronizations to fail on the client side. The maximum backlog size can be set to any integer value >= 0. By default, the backlog has no maximum size.



CR:364243
CR Number:   364243
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1906 18 Aug 2004 Fixed
Description
Support has been added to MobiLink clients for Basic HTTP authentication to third-party HTTP proxies and servers, as described in RFC 2617. To authenticate to web servers and gateways, the userid and password is specified using the new "http_userid" and "http_password" synchronization parameters. To authenticate to proxy servers, use "http_proxy_userid" and "http_proxy_password".



If a third party HTTP server or proxy requires authentication, but no credentials are supplied, or if the supplied credentials are rejected, the synchronization attempt will fail and an appropriate error will be reported.



With Basic authentication, passwords are included in the HTTP headers in cleartext, so use HTTPS to encrypt the headers and protect the passwords.



Note that Digest authentication, which is also described in RFC 2617, is not currently supported.



CR:364246
CR Number:   364246
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2404 19 Aug 2004 Fixed
9.0.1 1908 19 Aug 2004 Fixed
8.0.3 5147 19 Aug 2004 Fixed
8.0.2 4462 19 Aug 2004 Fixed
Description
A reference to a column not in the GROUP BY list, when made from an IN condition, was not being reportrd as an error.



For example:



select if emp_id in (1) then 0 else 1 endif

from employee

group by state



This problem is now fixed.



CR:364260
CR Number:   364260
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1908 19 Aug 2004 Fixed
Description
The QAnywhere Agent was launching dbmlsync with the user 'ml_qa_user', and the password associated with this user, hard-coded in the connection string. Thus if the default QAnywhere user 'ml_qa_user' was deleted from a message store , the QAnywhere Agent would not have been able to perform message transmission to a MobiLink server. This has been corrected. Now, the QAnywhere Agent launches dbmlsync with the user and password supplied in the command line options "-dbauser" and "-password", in the connection string.



CR:364278
CR Number:   364278
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 5147 20 Aug 2004 Fixed
8.0.2 4462 20 Aug 2004 Fixed
Description
Support for message callbacks has now been added to the ODBC driver. The message handler is installed by calling the SQLSetConnectAttr() function.



For example:



static char mybuff[80];

static int mytype;



// callback for messages



void SQL_CALLBACK my_msgproc(

void * sqlca,

unsigned char msg_type,

long code,

unsigned short len,

char * msg )

{

memcpy( mybuff, msg, len );

mybuff[ len ] = '\0';

mytype = msg_type;

}



// install the message handler for this connection

rc = SQLSetConnectAttr( dbc,

ASA_REGISTER_MESSAGE_CALLBACK,

(SQLPOINTER) &my_msgproc, SQL_IS_POINTER );



Then a SQL statement such as:



Message 'after' type status to client;



will invoke the ODBC client application's message handler.



CR:364347
CR Number:   364347
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2400 20 Aug 2004 Fixed
9.0.1 1908 20 Aug 2004 Fixed
Description
There are three output files produced by the QAnywhere Agent if the -verbose command line option is specified: qaagent.log, qanycli.mls and dblsn.out. These files contain the output from the qaagent.exe process, the dbmlsync.exe process and dblsn.exe process respectively, and are created in the "start-in" directory of the QAnywhere Agent process when launched on a Windows platform, or the file system root, if the agent was launched on a Windows CE platform. This could have caused problems if it became necessary to output to another location, especially on Windows CE, if the root file system was on a media with very limited space, and the output files needed to be redirected to other media where there was more room.



The fix is the addition of four new command line options for the QAnywhere Client agent (qaagent):



-o <file> log output messages to file. Ex. -o c:\tmp\qaa.out outputs to files c:\tmp\qaa.out, c:\tmp\qaa_sync.out and c:\tmp\qaa_lsn.out

-ot <file> truncate file and log output messages to it. Ex. -ot c:\tmp\qaa.out truncates and outputs to files c:\tmp\qaa.out, c:\tmp\qaa_sync.out and c:\tmp\qaa_lsn.out

-os <size> rename log file to YYMMDDxx.<ext> and start a new file with the original name when log reaches <size> (minimum 10K, cannot use with -on). The value of <ext> depends on the log file being renamed.

-on <size> append .old to the log file name and start a new file with the original name when log reaches <size> (minimum 10K, cannot use with -os)



The QAnywhere Client will log its output to the specified file, The MobiLink Client dbmlsync, will log its output to the file suffixed by "_sync", and MobiLink Listener dblsn, will log its output to the file suffixed by "_lsn".



For example, if "-o c:\tmp\mylog.out" is specified then qaagent will log yo "c:\tmp\mylog.out", dbmlsync will log to "c:\tmp\mylog_sync.out" and dblsn will log to "c:\tmp\mylog_lsn.out".



The extension of the files created when using the -os option depends on the log being renamed. If the QAnywhere Agent log is being renamed, the extension is .qal. If the dbmlsync log is being renamed the extension is .dbs. If the dblsn log is being renamed the extension is .nrl.



If -verbose is specified without specifying -ot or -o, then the pre-fix logs are used: qaagent.log, qanycli.mls and dblsn.log, and -os and -on switches are ignored.



CR:364349
CR Number:   364349
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2414 30 Aug 2004 Fixed
9.0.1 1913 30 Aug 2004 Fixed
9.0.0 1355 30 Aug 2004 Fixed
Description
If the MobiLink Synchronization Server encountered an HTTP request larger than 1024 bytes, synchronization would fail. This has been fixed.



CR:364365
CR Number:   364365
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2407 20 Aug 2004 Fixed
9.0.1 1909 20 Aug 2004 Fixed
9.0.0 1353 20 Aug 2004 Fixed
Description
When using Interactive SQL dbisql, and connected via the iAnywhere JDBC Driver, if a "FORWARD TO server {...}" statement was executed, where "server" is the name of a Remote Data Access server and the information inside the curly braces "{}" was anything that the remote server understood, it would likely have failed with one of two errors. If the statement sent to the remote server returned a result set, then the error "Remote server does not have the ability to support this statement" would have been given. If the statement sent to the remote server did not return a result set, then dbisql would have complained that the result set had errors. This problem has now been fixed.



Note that this problem does not exist if using dbisql connected via jConnect. Also, if the "FORWARD TO" statement used single quotes instead, then both jConnect and the iAnywhere JDBC Driver will work fine.
Workaround Description
 Use of single quotes instead of curly braces, works

but then that may be the documentation bug.



CR:364372
CR Number:   364372
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1929 22 Oct 2004 Fixed
10.0.0 1582 24 Jan 2005 Fixed
9.0.2 3021 24 Jan 2005 Fixed
Description
Sargable predicates using subqueries were not used for partial index scans in some cases. The sargable predicates having this problem were only the ones referencing at least two different tables from the main query block. An example of such predicate is "T1.col1 = (select max(R.col2) from R where R.col3 = T2.col4)" where T1 and T2 are two tables of the main query block. This has been fixed.



An example:



The sargable predicate " t1.t1_id = (select MIN(t3.t1_id) from t3 where t3.t2_id=t2.t2_id)" can now be used to access the table t1 through a partial index scan on the primary key index "t1". Hence, the query may have the access plan

" t2<seq> JNL t1<t1> : GrByS[ t3<t3> ]" .



create table t1 ( t1_id int primary key);

create table t2 ( t2_id int );

create table t3 ( t1_id int, t2_id int primary key );



select * from t1, t2 on ( t2.t2_id = t1.t1_id +1 )

where t1.t1_id = (select MIN(t3.t1_id) from t3 where t3.t2_id=t2.t2_id)



CR:364378
CR Number:   364378
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2405 20 Aug 2004 Fixed
9.0.1 1908 20 Aug 2004 Fixed
9.0.0 1352 20 Aug 2004 Fixed
8.0.3 5148 20 Aug 2004 Fixed
8.0.2 4462 20 Aug 2004 Fixed
Description
If an error occurred when positioning a cursor, future fetches would have failed with the error -853 "Cursor not in a valid state". When prefetch was enabled (the default) the specific error when positioning a cursor may not have been returned to the application, with "Cursor not in a valid state" being returned instead.



For example, if a query had a WHERE clause which caused a conversion error, the application may never have received an error stating a conversion error occurred, but would have received the error "Cursor not in a valid state" instead.



This has been fixed so that the initial error, which put the cursor in an invalid state, is now returned to the application.



CR:364379
CR Number:   364379
Product Name:   SQL Anywhere
Product Component:   JDBC Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2405 20 Aug 2004 Fixed
9.0.1 1908 20 Aug 2004 Fixed
9.0.0 1352 20 Aug 2004 Fixed
Description
If an application running on a Unix platform, and using the iAnywhere JDBC Driver, fetched a string with embedded null characters, the resulting string would have been truncated at the first null character. This problem has been fixed.



Note that a similar problem exists for applications running on Windows systems as well. However this problem exists in the ASA ODBC Driver and is addressed by Engineering Case 364608.



CR:364387
CR Number:   364387
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2405 18 Aug 2004 Fixed
Description
When autostarting the database server using the Developer Edition:

1) During the server startup sequence, the Developer Edition splash screen would appear for only a fraction of a second, then disappear. It should remain visible for three seconds, as it does when started manually.

2) The splash screen window would reappear if the system tray icon was used to restore the server window. It should appear only during the startup sequence.

3) The splash screen window was empty. The text did not appear.



These problems have been fixed. The splash screen will now contain the intended text, it will display for three seconds during the startup sequence, and will not reappear.



CR:364397
CR Number:   364397
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2405 20 Aug 2004 Fixed
Description
Developer and Evaluation versions of the MobiLink Synchronization server would have always required the user to manually dismiss the notice dialog. Now the dialog auto-dismisses after several seconds, as the ASA database server does.



CR:364536
CR Number:   364536
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2406 20 Aug 2004 Fixed
9.0.1 1916 07 Sep 2004 Fixed
Description
When the synchronization parameter "liveness_timeout" was specified for the tcpip synchronization stream, reads would not have timed out, even after the specified interval had expired. This has been fixed.



CR:364540
CR Number:   364540
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2429 13 Sep 2004 Fixed
9.0.1 1919 13 Sep 2004 Fixed
9.0.0 1361 13 Sep 2004 Fixed
Description
As of version 9.0.0, java objects in the database are no longer supported. A query of a computed column that referenced a Java object would have failed with an "Invalid type or field reference" error. Now, querying a Java computed column will fail with a "Not Implemented Java Objects" error.



CR:364573
CR Number:   364573
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2406 23 Aug 2004 Fixed
9.0.1 1909 23 Aug 2004 Fixed
9.0.0 1352 23 Aug 2004 Fixed
8.0.3 5148 23 Aug 2004 Fixed
8.0.2 4463 23 Aug 2004 Fixed
Description
It was not possible to assign an enum value to AsaParameter.Value without an explicit cast. Now when AsaParameter.Value is set to an enum value, the AsaParameter.AsaDbType is set to the underllying type of the enum value (Byte, Int16, UInt16, Int32, UInt32, Int64 or UInt64) and the value is converted to the underlying type.



CR:364608
CR Number:   364608
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2406 20 Aug 2004 Fixed
9.0.1 1909 20 Aug 2004 Fixed
9.0.0 1352 20 Aug 2004 Fixed
8.0.3 5148 20 Aug 2004 Fixed
8.0.2 4463 20 Aug 2004 Fixed
Description
If an ODBC application running on a Windows system fetched a string with embedded null characters, the resulting string would have been truncated at the first null character. This problem has been fixed.



Note that a similar problem exists for applications running on Unix platforms as well. However this problem exists in the iAnywhere JDBC Driver and is addressed by Engineering Case 364379.



CR:364610
CR Number:   364610
Product Name:   SQL Anywhere
Product Component:   JDBC Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2406 20 Aug 2004 Fixed
9.0.1 1909 20 Aug 2004 Fixed
9.0.0 1352 20 Aug 2004 Fixed
Description
Connecting to a database using Interactive SQL dbisql, and the iAnywhere JDBC Driver, would have set the initial isolation level to 0, instead of the proper isolation level as defined by the database option Isolation_level. Once the connection was made though, changes to the isolation level would have worked fine. This problem has now been fixed.



CR:364680
CR Number:   364680
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.0 1390 30 Nov 2004 Fixed
9.0.1 1912 30 Nov 2004 Fixed
9.0.2 2451 30 Nov 2004 Fixed
Description
When processing a single-row GROUP BY query, the server could have crashed if at least one of the aggregate functions had been specified with the DISTINCT qualifier and the hash group-by method had been selected by the query optimizer.



For example, the following query could generate the crash (depending on the access plan selected by the optimizer):

select count( distinct dept_name+'a' )

from ( select distinct dept_name

from department

where dept_id < 1 ) T



This problem has been fixed.



CR:364685
CR Number:   364685
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1908 20 Aug 2004 Fixed
Description
A change has been made to the existing callback support such that when a connection designates a message callback function, it applies only to that connection.



CR:364820
CR Number:   364820
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2410 23 Aug 2004 Fixed
9.0.1 1910 23 Aug 2004 Fixed
Description
If the font used for displaying result sets was changed, the new font was not applied to those cells which contained NULL values, until dbisql was restarted. Now, the fonts used in those cells are updated immediately.



CR:364826
CR Number:   364826
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
07 Sep 2004 Fixed
Description
If a BACKUP statement containing WAIT BEFORE START or WAIT AFTER END was executed by a connection which had uncommitted transactions, the backup would never have completed. Now an error is reported in this situation. The connection should COMMIT or ROLLBACK before executing the BACKUP.



CR:364921
CR Number:   364921
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2411 25 Aug 2004 Fixed
9.0.1 1911 25 Aug 2004 Fixed
9.0.0 1354 25 Aug 2004 Fixed
8.0.3 5150 25 Aug 2004 Fixed
Description
Interactive SQL dbisql could failed with an internal error when rows of a table were selected and then the DELETE key was pressed to delete them. The following conditions had to be true for the error to have occured:

- There must have been more than about 125 rows in the table

- The rows had to have been selected using the keyboard

- The table was scrolled while selecting, past the initial 125 rows

- The "Show multiple result sets" option was OFF.



This problem has been fixed.



In a related issue, if rows were selected, then CTRL+C was pressed to copy them, extra lines of empty values would have been select after the last row. All the table data would have been copied correctly; the error was the addition of the blank rows. This has also been fixed.



CR:364974
CR Number:   364974
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   4.3.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2411 25 Aug 2004 Fixed
9.0.1 1911 25 Aug 2004 Fixed
Description
When attempting to save a stored procedure or function as a file, the file name would have been written with a file extension of ".sql", regardless of the extension given when "All files (*.*)" was selected in the "Files of Type" combo box. This has been fixed.



CR:365038
CR Number:   365038
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   6.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 2412 25 Aug 2004 Fixed
9.0.1 1912 25 Aug 2004 Fixed
9.0.0 1354 25 Aug 2004 Fixed
8.0.3 5151 25 Aug 2004 Fixed
8.0.2 4465 25 Aug 2004 Fixed
Description
If a statement that modified a remote table was executed within a savepoint, no error was given, even though remote savepoints are not supported. Now, if an UPDATE, DELETE or INSERT statement attempts to modify a remote table while inside a savepoint, it will fail with the error "remote savepoints are not supported". Note that remote procedure calls within a savepoint will also fail with this error, as there is a chance the remote procedure will modify tables on the remote database.



CR:365044
CR Number:   365044
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Solaris
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
22 Dec 2004 Fixed
Description
When run interactively, Interactive SQL would have set its exit code to 9 (indicating that it could not connect), even if the user explicitly canceled the Connect dialog. This has been fixed so that when run interactively, the exit code is always 0.



CR:365072
CR Number:   365072
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   HP-UX
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1930 05 Oct 2004 Fixed
Description
Installing ASA 9.0.1 for HP-UX on Itanium from the CD-ROM results in the error:



/usr/lib/hpux32/dld.so: Unable to find library 'libstdc++.so.4'.



This has been fixed and a new CD-ROM is available.



There is also a workaround, create a symbolic link from libstdc++.so.5 to libstdc++.so.4:

ln -s libstdc++.so.5 libstdc++.so.4

This symlink should be removed once the installation has been completed.





--------------------------------------华丽的分割线-------------------------------------------------------------------------
之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具:ReadASADB。
此工具支持ASA v5.0,v6.0,v7.0,v8.0,v9.0,v10.0,v11.0,v12.0等版本。
恢复Sybase SQL Anywhere的工具在国内应该算首创。

ReadASADB功能
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具

  1. 适用于所有的SQL Anywhere版本    包括:5.x,6.x,7.x,8.x,9.x,10.x,11.x,12.x
  2. 适用于所有的UltraLite版本
  3. 能够恢复出来表结构和数据
  4. 能够恢复自定义数据类型
  5. 能够恢复存储过程等对象的语法
  6. 能够导出到目标数据库
  7. 能够导出到SQL文件并生成导入脚本
  8. 支持多种字符集  包括:cp850、cp936、gb18030、utf8等
  9. 能够恢复未加密或者简单加密类型的数据
  10. 简单易用
  11. 限制:不支持AES加密的数据文件
请参考:研发成功了从Sybase SQL Anywhere的DB文件上恢复数据的工具
            SQL Anywhere数据库非常规恢复工具ReadASADB使用介绍

ReadASADB适用场景

各种误操作:

  1. 误截断表(truncate table)
  2. 误删除表(drop table)
  3. 错误的where条件误删数据
  4. 误删除db或log文件
  5. 误删除表中的字段

本工具的应用场景:

1.因为物理磁盘故障、操作系统、系统软件方面或者掉电等等原因导致的Sybase SQL Anywhere数据库无法打开的情况;
2.误操作,包括truncate table,drop table,不正确的where条件导致的误删除等;
Sybase SQL Anywhere无法打开时,比较常见的错误是:Assertion failed。
如:
1、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Checkpoint log: invalid bitmap page -- transaction rolled back
2、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Page number on page does not match page requested -- transaction rolled back
3、Internal database error *** ERROR *** Assertion failed:200502 (9.0.2.2451) Checksum failure on page 23 -- transaction rolled back
4、File is shorter than expected
5、Internal database error *** ERROR *** Assertion failed: 201116 Invalid free list index page found while processing checkpoint log -- transaction rolled back
6、*** ERROR *** Assertion failed: 51901 Page for requested record not a table page or record not present on page等等。
+-------------------------------------华丽的分割线-------------------------------------------------------------------------