远程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:332306
CR Number:   332306
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Linux
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1652 07 Oct 2003 Fixed
9.0.0 1114 07 Oct 2003 Fixed
8.0.3 4798 07 Oct 2003 Fixed
8.0.2 4325 07 Oct 2003 Fixed
Description
Using the dbdsn utility to create or delete data sources on UNIX would not have updated the [ODBC Data Sources] section of the .odbc.ini file. This feature has now been added.



A work-around is to edit the .odbc.ini file directly and add the appropriate information into the [ODBC Data Sources] section, or to use a third party driver manager tool for maintaining the file.



CR:332316
CR Number:   332316
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1644 01 Oct 2003 Fixed
9.0.0 1217 01 Oct 2003 Fixed
Description
Attempting to do a silent install would have displayed the License Agreement dialog. This dialog is now fixed and is no displayed during a silent install. In order to get this fix, copy the new setup.inx file to the install image.
Workaround Description
 Customer has been given the fixed transaction log from Bruce.(no'oped)



CR:332354
CR Number:   332354
Product Name:   UltraLite
Product Component:   UltraLite for eMbedded Visual Basic
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4781 19 Sep 2003 Fixed
8.0.2 4314 19 Sep 2003 Fixed
Description
It was not possible to set a non-primary index column for Lookup or Find. For example, the following statements would have result in the error SQLE_METHOD_CANNOT_BE_CALLED



Set table = Connection.Open("MultiIndex_Table")

table.Open("Non_Primary_Index")

table.Columns("non_primary_index_column").Value = value



This error was caused by only checking the primary index for allowable column sets. This has now been fixed to check the index that was used to open the table.



CR:332364
CR Number:   332364
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)
9.0.1 1637 19 Sep 2003 Fixed
9.0.0 1217 19 Sep 2003 Fixed
8.0.3 4788 19 Sep 2003 Fixed
8.0.2 4316 19 Sep 2003 Fixed
7.0.4 3452 19 Sep 2003 Fixed
Description
A successfully executed ALTER PROCEDURE (or FUNCTION) statement could have been written to the transaction log with an incorrect owner name if the owner name was not specified in the ALTER statement and the procedure or function was owned by a user other than the one executing the ALTER statement. This error would have resulted in failure during recovery if the logged statement needed to be replayed.



As an example, assume that a procedure USER1.TEST already existed in the database and the procedure USER2.TEST did not exist. Further, assume that USER2 was able to see and modify the procedure owned by USER1. Now, if USER2 executed an "ALTER PROCEDURE TEST" statement, then the server would have resolved the procedure name as "USER1.TEST" and correctly modified that procedure. However, the statement put in the transaction log would have incorrectly referred to procedure "USER2.TEST".



This problem has now been fixed. Note that the problem has an impact only when the logged statement needs to be replayed for any reason.



CR:332475
CR Number:   332475
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1659 07 Oct 2003 Fixed
9.0.0 1225 07 Oct 2003 Fixed
8.0.3 4805 07 Oct 2003 Fixed
8.0.2 4328 07 Oct 2003 Fixed
Description
The START DATABASE statement would have failed with a syntax error if the database name was in quotation marks and started with a hyphen, e.g.:



START DATABASE 'mydb.db' AS "-myName"



This was a specific instance of the way quoted identifiers were handled by dbisql in general. Dbisql had required that all characters in any quoted identifier had to be alphabetic or numeric. This was an incorrect requirement (any character should valid) and has been fixed.



In a related issue, the STOP DATABASE statement did not work if the database name contained a hyphen. This has also been fixed.



CR:332544
CR Number:   332544
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1650 02 Oct 2003 Fixed
9.0.0 1221 02 Oct 2003 Fixed
8.0.3 4796 02 Oct 2003 Fixed
8.0.2 4324 02 Oct 2003 Fixed
Description
An incorrect result set might have been returned for a query inside a stored procedure, if a cached cursor plan was being used, and the statement contained expressions for which expression caching was being used. An example of such statement is a SELECT statement with NOT EXISTS predicates:



select * from Table_1 where

not exists(select * from Table_2 where

Table_2.X = Table_1.X )



The cached expression had to satisfy one of the following conditions:

- the expression referenced tables which changed from one call of the procedure to another (e.g., new rows are being added to those tables)

(2) the expression referenced the stored procedure's parameters, which changed from one call of the procedure to another. This is now fixed.



CR:332636
CR Number:   332636
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1637 24 Sep 2003 Fixed
9.0.0 1217 24 Sep 2003 Fixed
8.0.3 4783 24 Sep 2003 Fixed
8.0.2 4316 24 Sep 2003 Fixed
Description
Personal Servers on Windows were not detecting that another Personal Server was running with the same name if one of the servers was not using shared memory (for example if -ec ecc_tls was used).Network servers on Windows and NetWare were not giving a startup error if a network server with the same name was found on one of TCP/IP or SPX, while the other link (TCP/IP or SPX) started successfully. This only occurred if -x was not specified. This has been fixed so that servers correctly detect these cases and display an error.



CR:332684
CR Number:   332684
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.1 1637 23 Sep 2003 Fixed
9.0.0 1217 23 Sep 2003 Fixed
Description
In the Design Details pane, when saving the contents of a SQL statement log to a file, if the file specified already existed,the dialog asking whether to overwrite the file, append to the file, or cancel the operation, would have displayed ampersands in the

buttons' text. Now, no ampersands are displayed in the buttons' text and the Alt key can be used to make a selection by typing the desired button's keyboard shortcut.



CR:332685
CR Number:   332685
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.1 1637 23 Sep 2003 Fixed
9.0.0 1217 23 Sep 2003 Fixed
Description
A SELECT statement which referenced a procedure in the FROM clause, would have failed with a syntax error when used inside a Transact-SQL procedure. Procedure arguments were unparsed without surrounding brackets inside a Transact-SQL procedure. This is now fixed.



CR:332692
CR Number:   332692
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.1 1637 24 Sep 2003 Fixed
9.0.0 1217 24 Sep 2003 Fixed
8.0.3 4783 24 Sep 2003 Fixed
8.0.2 4316 24 Sep 2003 Fixed
Description
A FOR statement in a stored procedure would have crashed the server if the statement tried to use a dynamic query. This has been fixed. A workaround is to declare the cursor and variables explicitly and use a LOOP statement with FETCH statements.



CR:332693
CR Number:   332693
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.1 1637 19 Sep 2003 Fixed
9.0.0 1217 19 Sep 2003 Fixed
8.0.3 4783 19 Sep 2003 Fixed
8.0.2 4316 19 Sep 2003 Fixed
7.0.4 3292 19 Sep 2003 Fixed
Description
The server could have become deadlocked when dropping tables, users or groups. This was most likely to occur on multiprocessor Unix machines. For the server to have become deadlocked, another transaction must have been concurrently accessing some database object (such as a table, procedure, view) for the first time. This has now been fixed.



CR:332698
CR Number:   332698
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.1 1637 24 Sep 2003 Fixed
Description
When creating a proxy table using the Proxy Table wizard, there was no way to determine which columns belonged to the remote table's primary key. Now, with databases created as of version 9.0.0, the columns in the primary key are displayed using the same icon that is used throughout the Plug-in to denote primary key columns.



CR:332794
CR Number:   332794
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Generic
Original Version:   6.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1638 19 Sep 2003 Fixed
9.0.0 1217 19 Sep 2003 Fixed
8.0.3 4784 19 Sep 2003 Fixed
8.0.2 4316 19 Sep 2003 Fixed
Description
Attempting to prepare a statement with an empty column alias (ex. SELECT 1 "") would have caused the ODBC driver to crash. This problem has been fixed.



CR:332836
CR Number:   332836
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1638 24 Sep 2003 Fixed
9.0.0 1217 24 Sep 2003 Fixed
8.0.3 4784 24 Sep 2003 Fixed
8.0.2 4316 24 Sep 2003 Fixed
Description
If a connect event name or table event name was unrecognized, the Mobilink Server would have put the error message "unrecognized connection/table event name" in the Mobilink Server's log. This was confusing, as errors should cause the synchronization to be aborted, but in this situation, we want the synchronization to continue. So the message has been changed from an error to a warning.



CR:332861
CR Number:   332861
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)
9.0.1 1638 25 Sep 2003 Fixed
9.0.0 1217 25 Sep 2003 Fixed
8.0.3 4784 25 Sep 2003 Fixed
8.0.2 4316 25 Sep 2003 Fixed
Description
Attempting to upgrade a database having a page size of 32K would fail with the error "Value 32768 out of range for destination". This has been fixed.



CR:332960
CR Number:   332960
Product Name:   UltraLite
Product Component:   UltraLite.NET
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1642 23 Sep 2003 Fixed
9.0.0 1217 23 Sep 2003 Fixed
Description
UltraLite.NET was failing with a System.MissingResourceManifestException when the resources for the "current" language are not available. This has been fixed so that now CurrentUICulture then CurrentCulture then English are searched for resources. If none are found, the SQL error strings revert to the name of the SQL Code.



As a workaround, use Regional Settings control panel to select English as the current language or in the application set the culture to any english-based (en-??) country specific culture: Thread.CurrentThread.CurrentUICulture = new CultureInfo( "en-US" )



CR:332963
CR Number:   332963
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Solaris
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1644 30 Sep 2003 Fixed
9.0.0 1218 30 Sep 2003 Fixed
8.0.3 4790 30 Sep 2003 Fixed
8.0.2 4320 30 Sep 2003 Fixed
Description
When backing up a database using the BACKUP DATABASE statement with the TRANSACTION LOG TRUNCATE option, both the database and log file are backed up and then the current log file is truncated. If there were transactions occurring at the time of the backup, then these transactions can begin in the backed up log and then continue into the current log file once it has been truncated and the backup is complete, as transactions can span log files when using a database created with version 8.0.0 or higher. The proper way to recover from this backup is to start with the backup database and then apply the backup log file followed by the current log file. However, this would not have succeeded, when applying the logs in this way the error "Cannot open transaction log file -- Can't use log file 'log file name' since it has been used more recently than the database" would always have been displayed when applying the current log file. This occurred because the starting offset of the current log was not updated correctly when the backup finished.



Unfortunately, applying the logs incorrectly might have actually worked. For example, if instead of applying the backup log to the backup database first, the current log file was applied to the backup database, it would have applied successfully. Again this is because the log offsets were not correctly updated. This was unfortunate, since all of the transactions that were in the backup log at the time the backup would have been lost.



This has now been fixed, the log offset of the current log file is now updated properly when using the BACKUP DATABASE statement with the TRANSACTION LOG TRUNCATE option. This problem would not have occurred when using dbbackup.exe.



CR:332974
CR Number:   332974
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 1641 23 Sep 2003 Fixed
9.0.0 1112 23 Sep 2003 Fixed
8.0.3 4786 23 Sep 2003 Fixed
8.0.2 4317 23 Sep 2003 Fixed
Description
Unix applications, attempting to connect via TCPIP, may have failed to connect with the error message: "Unable to initialize requested communication links". This problem only occurred when connecting via streams, (ie ODBC, dblib or iAnywhere JDBC), not TDS, (ie jConnect or Open Client). Also, the problem required many iterations of:

- Creating an environment

- Connecting through TCP/IP

- Disconnecting

- Destroying the environment

THis problem is now fixed.



CR:333003
CR Number:   333003
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.1 1638 23 Sep 2003 Fixed
9.0.0 1217 23 Sep 2003 Fixed
8.0.3 4784 23 Sep 2003 Fixed
8.0.2 4316 23 Sep 2003 Fixed
Description
When run on Windows, Java code running in the server's VM, could have thrown the Datagram socket exception: "Datagram packet too large." when receiving a single byte from an incoming datagram. . This has been fixed.



CR:333007
CR Number:   333007
Product Name:   UltraLite
Product Component:   UltraLite for AppForge MobileVB
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1641 25 Sep 2003 Fixed
9.0.0 1217 25 Sep 2003 Fixed
Description
Using UltraLite on PalmOS, it is possible to suspend the state of a result set. This behaviour is achieved by not calling the Close method on a result set. When a result set is reopened after it has been explicitly closed (the ULResultSet.Close method has been called) the cursor should be positioned before the first row. However, it was positioned on the row it was on before Close was called. This behaviour has been fixed.



State information (the current row in the result set) is maintained if a persistent name is provided for the ULConnection.PrepareStatement call, and Close is not called on the ULResultSet, or if it is called after the ULPreparedStatement.Close method has been called.



CR:333024
CR Number:   333024
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.1 1643 25 Sep 2003 Fixed
9.0.0 1218 25 Sep 2003 Fixed
8.0.3 4789 25 Sep 2003 Fixed
8.0.2 4319 25 Sep 2003 Fixed
7.0.4 3431 25 Sep 2003 Fixed
Description
The server could have failed with the error "Fatal error: Unknown device error", or corrupted a table, when updating a large row with a page size larger than 4K. This would only have occurred if the update statement was making the row larger than 4K. As a result of the corruption, rows could have gone missing. This has been fixed.



Note, this fix does not recover lost or corrupted rows.



CR:333033
CR Number:   333033
Product Name:   UltraLite
Product Component:   UltraLite for AppForge MobileVB
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1642 25 Sep 2003 Fixed
9.0.0 1217 25 Sep 2003 Fixed
Description
The ULResultSet.MoveLast method was behaving like MoveFirst, moving the cursor to the first row of the result set rather than the last. This has been fixed.



CR:333108
CR Number:   333108
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Novell NetWare
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1648 01 Oct 2003 Fixed
9.0.0 1217 01 Oct 2003 Fixed
8.0.2 4323 01 Oct 2003 Fixed
8.0.1 3133 01 Oct 2003 Fixed
7.0.4 3494 01 Oct 2003 Fixed
Description
It was possible for the disconnect of a shared memory connection to the NetWare server to cause the server to crash. This has been fixed.



CR:333111
CR Number:   333111
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.1 1595 23 Sep 2003 Fixed
9.0.0 1187 23 Sep 2003 Fixed
8.0.3 4734 23 Sep 2003 Fixed
8.0.2 4287 23 Sep 2003 Fixed
8.0.1 3124 23 Sep 2003 Fixed
Description
When optimizing a query that referenced proxy tables, the server unnecessarily calculated

the cost of disk I/O for the proxy tables. This has been fixed.



CR:333142
CR Number:   333142
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)
8.0.3 4788 26 Sep 2003 Fixed
8.0.2 4318 26 Sep 2003 Fixed
7.0.4 3496 03 Oct 2003 Fixed
Description
If a statement encountered an error (e.g. row locked, foreign key violation) while running with the Chained option set to 'OFF' (i.e. INSERTs, UPDATEs and DELETEs are automatically commited), then any locks acquired by that statement would not have been released when the statement completed. This could result in other connections being blocked unnecessarily. This has been fixed.



CR:333248
CR Number:   333248
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.1 1643 26 Sep 2003 Fixed
9.0.0 1218 26 Sep 2003 Fixed
Description
If an EXECUTE IMMEDIATE statement was used to execute a MESSAGE statement, an "invalid prepared statement type" error would have been issued. This has now been fixed. A workaround is to execute the MESSAGE statement directly, without using EXECUTE IMMEDIATE.



CR:333256
CR Number:   333256
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1685 28 Oct 2003 Fixed
9.0.0 1227 28 Oct 2003 Fixed
Description
Lithuanian is now supported as a deployment language. The database server, client libraries, MobiLink and client, SQL Remote client, the stand-alone tools and dbisqlc can now run in Lithuanian. None of the Java admin tools support Lithuanian and the documentation was not been translated. The two-letter language code for Lithuanian is LT. "dblang lt" will set the registry so that Lithuanian deployment resources will be used.



CR:333271
CR Number:   333271
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1644 30 Sep 2003 Fixed
9.0.0 1218 30 Sep 2003 Fixed
8.0.3 4790 30 Sep 2003 Fixed
8.0.2 4321 30 Sep 2003 Fixed
Description
When attempting to update a base table joined with a proxy table, the columns being updated were getting set to NULL instead. Such operations are not supported and should have caused an error. The problem has now been resolved and a proper error is now raised.



CR:333275
CR Number:   333275
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.1 1664 20 Oct 2003 Fixed
9.0.0 1227 20 Oct 2003 Fixed
8.0.3 4810 20 Oct 2003 Fixed
8.0.2 4330 20 Oct 2003 Fixed
Description
The server collects and maintains column data distribution statistics during normal operation and uses these statistics for estimating the size of query result sets, which in turn determine the access plan used. Under certain circumstances (see example below), the statistics for character columns, with a declared size greater than 7 bytes, could have caused poor plans to have been chosen. In particular, the same query could have run efficiently on the first execution and slowly on subsequent runs. To illustrate the circumstances consider the following example:



create table stats(c1 int, c2 char(10))

create index stats on stats(c1, c2 )

insert into stats select row_num, 'Bogus' from rowgenerator

create statistics stats



The important things to note are:



1. Column c2 is a character column with size greater than 7 bytes

2. The database is case insensitive

3. There is an index with c2 as a trailing column

4. The relative number of rows that have the same value for C2 is quite large ( 100% for 'Bogus')

5. Statistics have been explicitly generated, so they are presumably in a good state

6. The number of rows in the table that have the same value for C2 for any single value of C1 is relatively small (1 row for each value of C1).



Now, consider a predicate "c2 = 'bogus'" which will return 100% of the rows. Note that the value used in the predicate has a capitalization that is different from the actual values in the table. The statement



select first estimate( c2, 'bogus' ) est from stats



will return 100 which is the correct selectivity of the predicate and the optimizer will likely be able to come up with an efficient plan for executing a query with that predicate. Now assume that a query is executed that looks for rows with specified values for C1 and C2. An example of such a query is:



select count(*) from stats where c1 = 5 and c2 = 'bogus'



Since the number of rows returned is very small (1 row mentioned in (6) above), the server will likely use an index on C1, C2. If that happens, then after executing the above query, the server will update the statistics for C2 in such a manner that the resulting selectivity of C2 = 'bogus' will now be grossly inaccurate. In our example



select first estimate( c2, 'bogus' ) est from stats



will now return 0.39% instead of the correct value of 100%. This degradation in the statistics for C2 can now result in poor plans for queries involving the predicate.



This problem has now been fixed.



CR:333296
CR Number:   333296
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)
9.0.1 1638 24 Sep 2003 Fixed
8.0.3 4784 24 Sep 2003 Fixed
Description
If an owner name was specified in a DECLARE LOCAL TEMPORARY TABLE statement, and the owner was not the same as the current user, it was possible to create more than one temporary table with the same name. A syntax error will now be given if an owner name is specified.



CR:333438
CR Number:   333438
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1649 03 Oct 2003 Fixed
9.0.0 1220 03 Oct 2003 Fixed
8.0.3 4795 03 Oct 2003 Fixed
8.0.2 4324 03 Oct 2003 Fixed
8.0.1 3133 03 Oct 2003 Fixed
Description
The ASA provider would not have written the correct binary value to a column when the type of the column was a binary type (e.g., BINARY(10), UNIQUEIDENTIFIER, etc.) and the column length was less than 100 bytes. This is now fixed.



CR:333477
CR Number:   333477
Product Name:   SQL Remote for SQL Anywhere
Product Component:   Database Tools Interface
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1644 01 Oct 2003 Fixed
9.0.0 1218 01 Oct 2003 Fixed
8.0.3 4790 01 Oct 2003 Fixed
8.0.2 4321 01 Oct 2003 Fixed
Description
Any transactions applied with a connection, say X, may not be replicated by SQL Remote in the next replication, if the message receiving thread (or phase) of SQL Remote had received, applied, and committed all the incoming messages on connection X and the online transaction log was renamed before connection X was terminated. This has now been fixed.



CR:333483
CR Number:   333483
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1650 03 Oct 2003 Fixed
9.0.0 1113 03 Oct 2003 Fixed
8.0.3 4796 03 Oct 2003 Fixed
8.0.2 4324 03 Oct 2003 Fixed
Description
In rare cases, an application could have crashed or hung in the client libraries if it did a repeated number of operations that involved initializing the environment, connecting to a database server, disconnecting, and finally destroying the environment. This was more likely to occur with TCPIP connections. It has been fixed. A workaround is to keep at least one user environment active.



CR:333484
CR Number:   333484
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1643 30 Sep 2003 Fixed
9.0.0 1218 30 Sep 2003 Fixed
8.0.3 4789 30 Sep 2003 Fixed
8.0.2 4319 30 Sep 2003 Fixed
Description
If UltraLite on Palm attempted to recover a database on an SD card, and the recovery included truncating the file (because it had been extended without a successful checkpoint), subsequent use of the file could have possibly caused a memory error. This has been fixed.



CR:333503
CR Number:   333503
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1648 02 Oct 2003 Fixed
9.0.0 1113 02 Oct 2003 Fixed
8.0.3 4794 02 Oct 2003 Fixed
8.0.2 4323 02 Oct 2003 Fixed
Description
If the ORDER BY list of a query referred to a constant select list item (ie SELECT 1 as C1, C2 ... ... ORDER BY 1,2) and that same select list item was also used in a GROUP BY clause, then the server may have crashed instead of ignoring the constant order by item. This problem has now been resolved.



CR:333510
CR Number:   333510
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.1 1643 23 Oct 2003 Fixed
9.0.0 1114 06 Oct 2003 Fixed
Description
The Query Editor was not allowing more than one parameter in the LIST function. This has been fixed.



CR:333600
CR Number:   333600
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.1 1645 01 Oct 2003 Fixed
9.0.0 1218 01 Oct 2003 Fixed
Description
If there are active connections to a server, the server can not be shutdown, unless dbstop -y or STOP ENGINE UNCONDITIONALLY is used. However, if the only connections to the server were HTTP connections, the server would have ignored them and shutdown anyway. This has been fixed.



CR:333634
CR Number:   333634
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.1 1645 30 Sep 2003 Fixed
9.0.0 1113 30 Sep 2003 Fixed
Description
The QueryEditor was incorrectly treating an unquoted table alias as different from a quoted alias (ie FOO and "FOO"). This is now fixed.



CR:333822
CR Number:   333822
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1651 06 Oct 2003 Fixed
9.0.0 1221 06 Oct 2003 Fixed
8.0.3 4797 06 Oct 2003 Fixed
8.0.2 4324 06 Oct 2003 Fixed
8.0.1 3133 06 Oct 2003 Fixed
Description
The MobiLink server would not start when run against a database using the Turkish (1254trk) collation, but would have failed with the error "Invalid option 'CHAINED' -- no PUBLIC setting exists". MobiLink was using the wrong case for the Chained option. This is now fixed.



CR:333863
CR Number:   333863
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1650 02 Oct 2003 Fixed
9.0.0 1221 02 Oct 2003 Fixed
Description
If a view, trigger, user defined function, event, or procedure contained a select statement with a Lateral Derived Table, then any execution of this object would have returned the error "Illegal reference to correlation name '<corr-name>'". If the database was unloaded the keyword LATERAL would have been missing for all the objects in the reload.sql script. This problem has been fixed.



Note, existing database objects with the LATERAL keyword must be recreated.



CR:333869
CR Number:   333869
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Microsoft Windows 95
Original Version:   7.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1649 03 Oct 2003 Fixed
9.0.0 1220 03 Oct 2003 Fixed
8.0.3 4795 03 Oct 2003 Fixed
8.0.2 4324 03 Oct 2003 Fixed
7.0.4 3495 03 Oct 2003 Fixed
Description
Running dbunload -ar could have failed to replace user dbspaces when creating the replacement database. This would only have occurred if the path stored in the SYSFILE table for the location of the dbspace was not hard-coded, (ie 'dbspace1.db' instead of 'c:\database\dbspace1.db') and dbunload was started in a directory other than the one where the database was located. This isnow fixed and dbunload -ar can be run from any directory on the local machine when using dbspaces.



CR:333898
CR Number:   333898
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1648 02 Oct 2003 Fixed
Description
Occasionally, when deleting a version 8.0.x Ultralite Database from a VFS card when using ULUtil, the file will be properly deleted but the error:

"Ultralite Database deletion attempt on ul_udb_xxxx.pdb generated error code 10509"

would still have been displayed. This is now fixed.



CR:333903
CR Number:   333903
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.1 1648 01 Oct 2003 Fixed
9.0.0 1113 01 Oct 2003 Fixed
Description
If while connected, the server was shut down, attempting to open the Query Editor would have caused an exception to be thrown thrown. This is now fixed.



CR:333908
CR Number:   333908
Product Name:   UltraLite
Product Component:   UltraLite Schema Painter
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1648 02 Oct 2003 Fixed
9.0.0 1220 02 Oct 2003 Fixed
8.0.3 4794 02 Oct 2003 Fixed
8.0.2 4323 02 Oct 2003 Fixed
Description
Dropping blob columns in the Schema Painter would have resulted in corrupt udb files. This would have caused a crash at the end of synchronization. This has been fixed, but a work around is to take the corrupt usm file, convert it to xml, then convert it back to a usm file again using the ulxml tool.



CR:333924
CR Number:   333924
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1664 16 Oct 2003 Fixed
9.0.0 1227 16 Oct 2003 Fixed
8.0.3 4810 16 Oct 2003 Fixed
8.0.2 4330 16 Oct 2003 Fixed
8.0.1 3135 16 Oct 2003 Fixed
Description
Beginning with version 8.0.2, unique identifier support was added to Adaptive Server Anywhere. A column can be typed as a "uniqueidentifier", which is a 16-byte binary value. A uniqueidentifier column was being typed as SQL_BINARY, but now that support specifically for uniqueidentifier columns has been added, (in conformance with the ODBC 3.5 specification), a uniqueidentifier column will now be identified as SQL_GUID and columns can now be bound as SQL_GUID.



Many ODBC functions, such as SQLDescribeCol, SQLGetTypeInfo, and SQLBindCol, are affected by this change. Uniqueidentifier columns can be bound as SQL_C_CHAR or SQL_C_WCHAR. When this is done, binary uniqueidentiers (SQL_C_GUID) are converted from binary to the uniqueidentifier string form with hyphens. For example, the 16-byte binary value 0x41dfe9efdb9111d28c43006008d26a6f is converted to and from the 36-byte character string "41dfe9ef-db91-11d2-8c43-006008d26a6f". If the bind type is SQL_C_WCHAR, the resulting string is 72 bytes in length.



Also, SQLGetInfo() with SQL_CONVERT_GUID is now supported, and SQLGetInfo() with SQL_CONVERT_xxx now reports all the conversions permissable with the CONVERT function. Previously, only a small subset of the permissable conversions was reported.



CR:333954
CR Number:   333954
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   8.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1644 03 Oct 2003 Fixed
9.0.0 1218 03 Oct 2003 Fixed
8.0.3 4791 03 Oct 2003 Fixed
8.0.2 4323 03 Oct 2003 Fixed
8.0.1 3133 03 Oct 2003 Fixed
Description
Empty connections were producing errors when the MobiLink server command line option, -vf wasn't used. Load balancers, with multiple MobiLink servers all running against the same consolidated database, tend to frequently open empty connections (ie. with no data flow) to the MobiLink server. The sheer number of these empty connections could have caused the MobiLink server log to fill with errors. These error messages are no longer displayed when -vf isn't used.



CR:334035
CR Number:   334035
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1725 16 Dec 2003 Fixed
9.0.0 1253 16 Dec 2003 Fixed
8.0.3 4870 16 Dec 2003 Fixed
8.0.3 4357 16 Dec 2003 Fixed
Description
This change fixes the following three problems that occurred when exporting data to dBASE III, and Foxpro files:



DATE columns were written as character records rather than date records. This would typically have prevented importing data from a .DBF file into an existing table, if the table contained any DATE columns and the .DBF file had been created by DBISQL.



Importing .DBF file into a database, and having DBISQL create the table automatically, would have created a TIMESTAMP column for DATE fields, rather than a DATE column.



When attempting to import a NULL value for a DATE, DBISQL would report that it "Cannot convert to a timestamp" SQLCODE=-157, SQLState="07006".



These problem are now fixed when connecting using the iAnywhere JDBC Driver.



The second and third problems are fixed for connections using jConnect.
Workaround Description
 None.



CR:334097
CR Number:   334097
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1649 03 Oct 2003 Fixed
9.0.0 1220 03 Oct 2003 Fixed
8.0.3 4795 03 Oct 2003 Fixed
8.0.2 4324 03 Oct 2003 Fixed
Description
When calling ULGetSynchResult( result ) after synchronizing, without using the Synchronization Observer, result->status.state would have been incorrect. The state could also have been incorrect, when calling ULGetSynchResult after restarting the database, when the UltraLite application had previously crashed or hung after a synchronization with or without the Observer. This has been fixed.



CR:334231
CR Number:   334231
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1650 03 Oct 2003 Fixed
9.0.0 1221 03 Oct 2003 Fixed
8.0.3 4796 03 Oct 2003 Fixed
8.0.2 4324 03 Oct 2003 Fixed
Description
In a very rare timing dependent situation, a server with multiple connections could have crashed when disconnecting a TCP/IP or SPX connection. This has been fixed.



CR:334353
CR Number:   334353
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)
9.0.1 1649 06 Oct 2003 Fixed
9.0.0 1220 06 Oct 2003 Fixed
8.0.3 4795 06 Oct 2003 Fixed
8.0.2 4324 06 Oct 2003 Fixed
Description
The sqlpp parser supported only one of the two ways that table hints can be specified. The following syntax would have worked:



SELECT *

FROM T WITH table-hint

while the following syntax with brackets would have caused a syntax error:



SELECT *

FROM T WITH ( table-hint )



Both syntaxes are now supported.



CR:334380
CR Number:   334380
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.1 1651 06 Oct 2003 Fixed
9.0.0 1221 06 Oct 2003 Fixed
Description
When creating a connection profile where one, but not both, of the userid and password were specified, then both would have been ignored when editing the connection profile or restoring the connection. This has been fixed.



In addition, if both the userid and password were specified, but either contained a semicolon, then the userid and password would also both have been ignored. This has also been fixed.



CR:334396
CR Number:   334396
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   6.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1651 06 Oct 2003 Fixed
9.0.0 1221 06 Oct 2003 Fixed
Description
It was not possible to use the User, Group or Remote User wizards to create users, groups or remote users with empty passwords; that is, there was no way to get the wizards to execute a GRANT CONNECT ... IDENTIFIED BY '' statement. This has been fixed. Now, the "Allowed to connect" check box can be checked and you can click "Next" to move to the next page, even when no password has been specified. In addition, the password can now be set to be empty for an existing user, group or remote user from the appropriate property sheet.



CR:334407
CR Number:   334407
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 09 Oct 2003 Fixed
9.0.0 1224 09 Oct 2003 Fixed
8.0.3 4803 09 Oct 2003 Deferred
8.0.2 4327 09 Oct 2003 Fixed
Description
Calling AsaDataReader.Read, opened with a stored procedure which declared a result set, would have failed with a 'Cursor not open' error, if the stored procedure did not return a result set. This problem has been fixed.



CR:334412
CR Number:   334412
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Novell NetWare
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1669 24 Oct 2003 Fixed
9.0.0 1229 24 Oct 2003 Fixed
8.0.3 4815 24 Oct 2003 Fixed
8.0.2 4332 24 Oct 2003 Fixed
Description
Attempting to apply a Patch or an EBF to an 8.x NetWare install, would have failed to upgrade the server executable if the filesystem was on a NetWare server mounted using the Novell Client for Windows. This was due to a fault in the Novell Client software. A work around is to perform the Patch or EBF on a Windows machine and copy the updated software to the Novell server.



Attempting to apply a second EBF to an 8.x NetWare install, would also have failed to upgrade the server executable if the filesystem was on a NetWare server mounted using the Windows Client for NetWare. This was due to a problem in the install script, and has been fixed.
Workaround Description
 Use Non-oem software. This is okay for development but not deployment.



CR:334421
CR Number:   334421
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1712 14 Nov 2003 Fixed
9.0.0 1252 08 Dec 2003 Fixed
8.0.3 4849 08 Dec 2003 Fixed
8.0.2 4342 08 Dec 2003 Fixed
Description
Support has now been added which allows the use of SELECT list expression names in the ORDER BY clause of UNION, INTERSECT or EXCEPT query expressions.

For example, the following query expression:



Select quantity from product

Union

Select quantity from product

Order by 1



can now be written as:



Select quantity from product

Union

Select quantity from product

Order by quantity



The first query specification of the UNION is used to determine the names to be matched with the ORDER BY clause:



Select quantity as qq from product

Union

Select quantity from product

Order by qq



CR:334469
CR Number:   334469
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1684 04 Nov 2003 Fixed
9.0.0 1235 04 Nov 2003 Fixed
8.0.3 4830 04 Nov 2003 Fixed
8.0.2 4340 04 Nov 2003 Fixed
Description
When attempting to import a FOXPRO formatted file, which used a memo file (.FPT), dbisql would either have failed with an "OutOfMemoryError" exception or would have used incorrect data. The file would have been processed correctly only if the internal block size used by the memo file was 64. This has been fixed.



CR:334492
CR Number:   334492
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.1 1666 07 Oct 2003 Fixed
9.0.0 1228 07 Oct 2003 Fixed
8.0.3 4812 07 Oct 2003 Fixed
8.0.2 4331 07 Oct 2003 Fixed
8.0.1 3135 07 Oct 2003 Fixed
Description
The name of a user-defined type (or domain) was not being returned in its original case by a DESCRIBE USER TYPES Embedded-SQL statement. This has been fixed.



CR:334537
CR Number:   334537
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.1 1652 08 Oct 2003 Fixed
9.0.0 1222 08 Oct 2003 Fixed
Description
HTTP connections to databases built with certain collations would not have done character set conversion, and the character set returned in the Content-Type header would have been "none", which is not a legal value. This has been fixed.



The collations affected were:

856HEB

932JPN

936ZHO

949KOR

950TWN

EUC_CHINA

EUC_KOREA



CR:334570
CR Number:   334570
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   5.5.05
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1655 08 Oct 2003 Fixed
9.0.0 1223 08 Oct 2003 Fixed
Description
ASA has long supported user-defined options (options whose names are unknown to both DBISQL or server); these are stored in the SYSOPTION catalog table like any other, and may have both public and individual user settings. However, setting these options temporarily for a given connection has never been supported. Unfortunately, any attempt to do so would have failed to cause an error. This oversight has been corrected.



For example:



SET OPTION PUBLIC.USER_DEFINED_OPTION = 'ON'

SET OPTION "DBA".USER_DEFINED_OPTION = 'OFF';

SET TEMPORARY OPTION "DBA".USER_DEFINED_OPTION = 'ON'; <- this would have failed silently



An attempt to temporarily set a user-defined option now results in SQLSTATE 42W45 (TEMPORARY_NOT_ALLOWED).



CR:334574
CR Number:   334574
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.1 1652 08 Oct 2003 Fixed
9.0.0 1222 08 Oct 2003 Fixed
Description
With UltraLite dynamic SQL, an application could have crashed when the GROUP BY clause listed only columns from a single table and there existed an index that contained a proper subset of those columns. This is now fixed.



CR:334650
CR Number:   334650
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.0 1218 26 Nov 2003 Fixed
9.0.1 1645 26 Nov 2003 Fixed
Description
Attempting to run a silent install recorded with the 9.0.0 GA install would have displayed the License Agreement dialog. This has been fixed and requires that the GA setup.inx be replaced with the corrected version. Please see Technical Document 1027656 for further details to resolve this issue.
Workaround Description
 None.



CR:334762
CR Number:   334762
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.1 1645 08 Oct 2003 Fixed
Description
When synchronizing in an application that used the UltraLite engine, the SQLCA would never have been updated when UltraLite called the application's synchronization observer callback. If an error occurred during synchronization, the sqlcode would have remained SQLE_NOERROR until the Synchronize call returned. This had been fixed.



CR:334763
CR Number:   334763
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1656 09 Oct 2003 Fixed
9.0.0 1223 09 Oct 2003 Fixed
8.0.3 4802 09 Oct 2003 Fixed
8.0.2 4327 09 Oct 2003 Fixed
Description
In rare and timing dependent cases, the client or server could have crashed when a TCPIP, Named Pipes or SPX disconnect was done and at least one other connection was active. The problem affected Windows ASA clients using TCP/IP, Named Pipes or SPX; Windows ASA servers using Named Pipes; and Windows CE and Unix servers using TCP/IP. These problems are now fixed.



CR:334802
CR Number:   334802
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.1 1656 09 Oct 2003 Fixed
9.0.0 1223 09 Oct 2003 Fixed
8.0.3 4802 09 Oct 2003 Fixed
8.0.2 4326 09 Oct 2003 Fixed
Description
The QueryEditor would have failed to parse a query if it had table or column names that contained characters that fell into the Unicode private use category (General category "Co" in the Unicode specification), as Java does not consider these characters to be part of an identifier. This has been fix, the QueryEditor's parser will now accept these characters as valid.



CR:334807
CR Number:   334807
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1657 09 Oct 2003 Fixed
9.0.0 1224 09 Oct 2003 Fixed
Description
If a stored procedure contained an EXECUTE IMMEDIATE statement, but no RESULT clause, it would have been defined as having a result set by adding a row to the SYSPROCPARM table. This could have caused problems for PowerBuilder applications, if the procedure also had OUT parameters. The extra row in SYSPROCPARM is no longer added, if the procedure contains any OUT parameters.



CR:334823
CR Number:   334823
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.1 1656 09 Oct 2003 Fixed
9.0.0 1223 09 Oct 2003 Fixed
Description
TLS connections to servers running on Windows 95, 98 or ME could have been dropped if a large amount of data was being sent or received. This has been fixed.



CR:334875
CR Number:   334875
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.1 1658 14 Oct 2003 Fixed
9.0.0 1224 14 Oct 2003 Fixed
8.0.3 4804 14 Oct 2003 Fixed
8.0.2 4328 14 Oct 2003 Fixed
Description
After system reboot, user login or Explorer restart, the system tray icon of the MobiLink server did not appear. This problem also affected dbmlsync.exe, dbremote.exe, and

dbltm.exe and has been fixed.



CR:334893
CR Number:   334893
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
7.0.4 3502 27 Oct 2003 Fixed
Description
ISQL and Sybase Central could not display Turkish characters properly. This has been fixed. A work-around is to edit the JRE font.properties file and change the exclusion ranges starting values from 0100 to 0500.



This problem could also occur for characters from other languages. Affected characters include those from Greek and Coptic, Cyrillic, Latin Extended A and B, and IPA extensions (characters in the Unicode range U+100 through U+4FF.)



CR:334914
CR Number:   334914
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)
8.0.2 4327 08 Oct 2003 Fixed
8.0.3 4803 08 Oct 2003 Fixed
9.0.0 1224 08 Oct 2003 Fixed
9.0.1 1657 08 Oct 2003 Fixed
Description
If the user name 'DBA' had been removed from the database, and the database option "Quoted_Identifier" was set to 'OFF', then the dbunload, dbxtract or mlxtract utilities used to generate a reload.sql file would have failed. This is now fixed.



CR:334948
CR Number:   334948
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.1 1657 09 Oct 2003 Fixed
9.0.0 1224 09 Oct 2003 Fixed
Description
Attempting to start the server with a compressed database, would have caused the server to crash. This has been fixed.



CR:334960
CR Number:   334960
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.1 1657 14 Oct 2003 Fixed
9.0.0 1224 14 Oct 2003 Fixed
8.0.3 4803 14 Oct 2003 Fixed
8.0.2 4327 14 Oct 2003 Fixed
Description
The "preview" table in the Import Wizard would not have shown any data, and no data would have been imported at all, if:

- an ASCII file was being imported. and

- the wizard was to create a new table for the data, and

- the file started with an empty line.



This has been fixed.



CR:335056
CR Number:   335056
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.1 1657 15 Oct 2003 Fixed
9.0.0 1224 15 Oct 2003 Fixed
Description
Connections using the iAnywhere JDBC Driver would have failed, if the DSN or FDSN parameter contained leading blanks.



For example:



CONNECT USING "dsn = ASA 9.0 Sample"



would not have succeeded because of the spaces around the equals sign. This problem is now fixed.



CR:335069
CR Number:   335069
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.1 1657 15 Oct 2003 Fixed
9.0.0 1224 15 Oct 2003 Fixed
Description
Adding a column to a table, and specifying that the column should allow nulls, may have created a column that did not allow nulls. In particular, the column would not allow nulls if the Allow_nulls_by_default setting was set to Off (its default is On) or if the column's data type was a domain with a NOT NULL default. Now, the table editor always respects the user's allow nulls setting when creating a column.



CR:335092
CR Number:   335092
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1658 16 Oct 2003 Fixed
9.0.0 1224 16 Oct 2003 Fixed
8.0.3 4805 16 Oct 2003 Fixed
8.0.2 4328 16 Oct 2003 Fixed
8.0.1 3134 16 Oct 2003 Fixed
7.0.4 3498 16 Oct 2003 Fixed
Description
Under forced conflict mode, uploaded deletes would have been applied in the wrong order. Consider the following sequence uploaded into tables Parent and Child, where table Child has a foreign key to table Parent:



(At the remote)

DELETE FROM Child WHERE foreign_key = 1;

DELETE FROM Parent WHERE primary_key = 1;

COMMIT;

(synchronize)



The second delete from the remote (ie. from Parent) would have been applied before the first delete, causing a referential integrity violation in the consolidated during upload. Prior to this change, the behaviour was to generally delete from Parent before deleting from Child. Now, the behaviour is to delete from Child before deleting from Parent.



CR:335093
CR Number:   335093
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Solaris
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1664 16 Oct 2003 Fixed
9.0.0 1227 16 Oct 2003 Fixed
8.0.3 4810 16 Oct 2003 Fixed
8.0.2 4330 16 Oct 2003 Fixed
Description
The clauses FOR READ ONLY and WITH TRUNCATE AT CHECKPOINT were added to the START DATABASE statement in version 8.0.2, but they were not being handled properly. Support for these clauses has now been added to dbisql, (and dbisqlc).



Note that these clauses cannont be used if the ON ENGINE clause is also specified.



CR:335095
CR Number:   335095
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.0 1121 27 Nov 2003 Fixed
Description
When right clicking in the Design Details panel, the popup menus would have been displayed with a "&" instead of mnemonics. Note, this problem also occurred in dbconsole. This has been fixed.



CR:335100
CR Number:   335100
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1658 15 Oct 2003 Fixed
9.0.0 1224 15 Oct 2003 Fixed
8.0.3 4804 15 Oct 2003 Fixed
8.0.2 4328 15 Oct 2003 Fixed
Description
Specifying an account of the form domain\user, in the Service wizard or property sheet, was not possible because the "Other account" drop-down list was not editable and only contained the local machine's accounts. Now, the list is editable so any user can be specified, with or without a domain.



CR:335155
CR Number:   335155
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.1 1659 14 Oct 2003 Fixed
9.0.0 1117 14 Oct 2003 Fixed
Description
Using the server's builtin HTML or XML Service Types to retrieve a result set that contained 32 or more columns, would have resulted in some column data being displayed incorrectly. This has been fixed.

For example, the HTML output from the service:



CREATE SERVICE qts335115demo TYPE 'HTML' AUTHORIZATION OFF USER DBA

AS SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32;



would have been incorrect.



CR:335254
CR Number:   335254
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.1 1659 16 Oct 2003 Fixed
9.0.0 1117 16 Oct 2003 Fixed
Description
For HTTP services created with URL ELEMENTS, the arguments may have contained HTTP encodings for special characters. For example, the first element in the URL <http://hostname/database/service/first element> would have been "first%20element". This has been fixed.



CR:335745
CR Number:   335745
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.1 1664 17 Oct 2003 Fixed
9.0.0 1227 17 Oct 2003 Fixed
8.0.3 4810 17 Oct 2003 Fixed
8.0.2 4330 17 Oct 2003 Fixed
Description
The Import wizard would not have imported all of the columns of a file, if:

- an ASCII file was being imported. and

- the wizard was to create a new table for the data, and

- the data on the first line of the file ended with a NULL value.



The symptoms of this problem were that the "Preview" table in the Import wizard did not display all of the columns in the file, and after clicking the "Finish" button, the new table would contain all but the last column. This is now fixed.



CR:335787
CR Number:   335787
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1671 28 Oct 2003 Fixed
9.0.0 1230 28 Oct 2003 Fixed
8.0.3 4817 28 Oct 2003 Fixed
8.0.2 4333 28 Oct 2003 Fixed
Description
The download_statistics event has the number of downloaded bytes as a parameter. This parameter was always zero for table scripts and a very small value for connection scripts. This problem would only have occurred if the client had download acknowledgements disabled. This has been fixed.



CR:335790
CR Number:   335790
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1665 21 Oct 2003 Fixed
9.0.0 1227 21 Oct 2003 Fixed
8.0.3 4810 21 Oct 2003 Fixed
8.0.2 4331 21 Oct 2003 Fixed
Description
The server could have failed with assertion 101518, "Memory allocation size too large", when executing a DISTINCT query with a large number of select expressions. The assertion would have failed if the Indexed Distinct query execution algorithm was selected by the optimizer, because the number of input rows was estimated to be small for example. The number of expressions required to cause the failure was approximately (page_size - 80)/8. This problem is now fixed



CR:335802
CR Number:   335802
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.1 1664 17 Oct 2003 Fixed
9.0.0 1227 17 Oct 2003 Fixed
8.0.3 4810 17 Oct 2003 Fixed
8.0.2 4330 17 Oct 2003 Fixed
Description
When fetching column data greater than 255 bytes in chunks, using GET DATA (ESQL GET DATA or ODBC SQLGetData), one or two extra bytes after the column data could have been retrieved. Whether or not this would have happened depended on the size of the column data, the chunk size used to GET DATA each chunk of the column, and the page size. For example, a data size of 258 bytes and a chunk size which was 256 bytes, would have caused this problem, as would a data size of 2278 bytes and a chunk size of 455 bytes. This problem was less likely with chunk sizes greater than 1K. This has been fixed so that no extra bytes are now retrieved with GET DATA.



CR:335803
CR Number:   335803
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1665 21 Oct 2003 Fixed
9.0.0 1227 21 Oct 2003 Fixed
8.0.3 4811 21 Oct 2003 Fixed
8.0.2 4331 21 Oct 2003 Fixed
Description
The INPUT statement was not able to add data to temporary tables. This has been fixed so that now it can.



CR:335977
CR Number:   335977
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.1 1665 20 Oct 2003 Fixed
9.0.0 1227 20 Oct 2003 Fixed
8.0.3 4811 20 Oct 2003 Fixed
8.0.2 4331 20 Oct 2003 Fixed
Description
When having the Import wizard create a new table, if any of the columns specified were of the types BIGINT, SMALLINT, TINYINT, NUMERIC or REAL, the columns would have been created as a type of VARCHAR instead. This problem has been fixed.



CR:335979
CR Number:   335979
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.1 1665 21 Oct 2003 Fixed
9.0.0 1227 21 Oct 2003 Fixed
8.0.3 4811 21 Oct 2003 Fixed
8.0.2 4331 21 Oct 2003 Fixed
Description
After running for some time on Windows 2000, the server could have stopped accepting new connections over TCP/IP, although existing connections would have continued to work. If the -z switch was used on the server, a message would have appeared in the server window saying "TCP Listener shutting down (x)" where x is a number. This has been fixed.



CR:335992
CR Number:   335992
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.1 1665 21 Oct 2003 Fixed
9.0.0 1120 21 Oct 2003 Fixed
Description
On sequential scans of a large table, a page read could have returned an incorrect, or possibly a partial page. This problem is now fixed. Note that only Unix (non-Linux) servers were affected by this.



CR:336013
CR Number:   336013
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1676 04 Nov 2003 Fixed
9.0.0 1232 04 Nov 2003 Fixed
Description
A predicate of the form:

<column> LIKE <pattern>

where <pattern> is a constant that contains no wild-cards is equivalent to:

CAST( <column> AS LONG VARCHAR) = CAST( <pattern> AS LONG VARCHAR )



In the case that <column> has a character domain, this comparison permits an index to be used. It is also possible to use an index if <column> is an exact numeric domain if we infer an additional predicate:

<column> = CAST( CAST( <pattern> AS LONG VARCHAR ) AS <column domain> )



Previous to this change, the ASA optimizer did not infer this new predicate, and an index could not be used for a query such as the following:

SELECT *

FROM SYS.SYSTABLE

WHERE table_id LIKE '1'

After this change, the additional sargable predicate is inferred, and an index can be used. Note that the original string-comparison predicate must be retained. The following query returns 0 rows:

SELECT *

FROM SYS.SYSTABLE

WHERE table_id LIKE '1.0'

while the related query:

SELECT *

FROM SYS.SYSTABLE

WHERE table_id = '1.0'

does return a row. Because of this, the predicate " table_id LIKE '1.0' " is treated as:

table_id = CAST( '1.0' AS INT ) AND CAST( table_id AS LONG VARCHAR ) = '1.0'



CR:336061
CR Number:   336061
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1666 21 Oct 2003 Fixed
9.0.0 1228 21 Oct 2003 Fixed
8.0.3 4812 21 Oct 2003 Fixed
8.0.2 4331 21 Oct 2003 Fixed
Description
An application could have failed with a communication error when doing a describe, if the client's character set was a multi-byte character set that was different from the server's character set, and a described column name had extended characters. This problem would have shown up when the column name in the client's charset contained more bytes than the column name in the server's character set. Note that ODBC, OLEDB and ADO.NET client libraries often internally describe result sets even when the application has not requested result set types or names. This is now fixed.



CR:336097
CR Number:   336097
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.1 1666 21 Oct 2003 Fixed
8.0.3 4812 21 Oct 2003 Fixed
Description
Vertically resizing the Chart while it was paused, would have caused the vertical ruler to have been rescaled, but the synchronization bars in the Chart would not have been scaled. This would have resulted in the row labels and rows being misaligned. This has been fixed by changing what pausing does. Now pausing simply stops automatic scrolling of the Chart, while new data continues to be added (offscreen) to the Chart and the Overview continues to be updated. Also, the view of the Chart will now be maintained on disconnect whether paused or not. The Monitor menu item has been renamed to "Pause Chart Scrolling" from "Pause Charting" and the autoscroll option (called "Scroll chart automatically when connected") now controls whether the Monitor is initially paused or not when a connection to MobiLink server is started. Now all three panes are updated with new data when connected, whereas before only the Table was updated when the Monitor was paused.



CR:336171
CR Number:   336171
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.2 4345 22 Oct 2003 Fixed
8.0.3 4842 22 Oct 2003 Fixed
9.0.0 1240 22 Oct 2003 Fixed
9.0.1 1697 22 Oct 2003 Fixed
Description
Reloading into a database with a smaller pagesize could have failed while loading statistics. The error that was returned was also misleading, as it indicated that the pagesize was too big. Statistics are now loaded only if the pagesize of the new database is equal to or greater than the pagesize of the original database.



CR:336214
CR Number:   336214
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.1 1666 23 Oct 2003 Fixed
9.0.0 1228 23 Oct 2003 Fixed
Description
The database option Max_recursive_iterations, would have limited the total number of recursive iterations in a query, rather than the total number for each invocation of the recursive common table expression. Therefore, if the recursive common table expression was invoked many times in a single query (from within a subquery, for example), then an incorrect error could have been returned. This has beed corrected.



CR:336319
CR Number:   336319
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Linux
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.0 1121 24 Feb 2004 Fixed
Description
If the server was started with the HTTP listener on port x, and connections were made to the HTTP server, then restarting the server on the same HTTP port (x) would have given the error:



"Can't start HTTP listener on address 0.0.0.0:x"



This has been fixed.



CR:336336
CR Number:   336336
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1672 03 Nov 2003 Fixed
9.0.0 1230 03 Nov 2003 Fixed
Description
An attempt to create a view that referenced a procedure in the FROM clause, would have crashed the server if the procedure used a WITH clause.



For example:

CREATE PROCEDURE p ()

BEGIN

CREATE VARIABLE i INT;

SET i = 1;

SELECT i;

END

CREATE VIEW v AS SELECT * FROM p() WITH (c1 INT);



This has now been fixed.



CR:336352
CR Number:   336352
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1669 23 Oct 2003 Fixed
9.0.0 1229 23 Oct 2003 Fixed
8.0.3 4815 23 Oct 2003 Fixed
8.0.2 4332 23 Oct 2003 Fixed
Description
Hebrew characters in a UTF8 database would have been translated into the wrong characters, if the charset connection parameter was not set to 'utf8'. The AsaClient was using the connection charset for character translation, now the AsaClient will use the database charset, if the charset is not specified in the connection string.



CR:336367
CR Number:   336367
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.1 1669 27 Oct 2003 Fixed
9.0.0 1113 27 Oct 2003 Fixed
Description
The Index Consultant was storing the cache size in terms of bytes, but then interpreting the stored value in terms of kilobytes. Thus, the wrong cache size was being used during the tuning phase. This was likely to have a small impact on the quality of the recommended indexes because the cache population is not stored for individual tables, thus making the recommendations largely independent of cache statistics.



On Unix, this resulted in a crash, as the overflow caused the cache size to be set to zero.



Now the cache size is both stored and interpreted in terms of kilobytes only.



CR:336376
CR Number:   336376
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.1 1669 28 Oct 2003 Fixed
9.0.0 1229 28 Oct 2003 Fixed
Description
A sequential scan using 'buffer fetch' (visible in the graphical plan as "Use buffer fetch: yes") could cause the server to crash with specific predicates. In order for the failure to occur, a column that was in a comparison predicate must have been NULL, and the ordering of the predicates had to match a specific pattern. This problem has been fixed.



CR:336502
CR Number:   336502
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4816 28 Oct 2003 Fixed
8.0.2 4333 28 Oct 2003 Fixed
8.0.1 3136 28 Oct 2003 Fixed
8.0.0 2360 28 Oct 2003 Fixed
Description
When profiling triggers and events, the statistics may not have lined up with the source. This has now been fixed.



CR:336506
CR Number:   336506
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1677 31 Oct 2003 Fixed
9.0.0 1232 31 Oct 2003 Fixed
8.0.3 4823 31 Oct 2003 Fixed
8.0.2 4336 31 Oct 2003 Fixed
Description
Running dbunload with the -ar command line option, ('rebuild and replace database'), would have caused the server to fail with Assertion 303000: 'Stopping JVM while forbidding and there are active java threads', if the database was Java enabled. Dbunload issues a "stop database" request, which attempts to drop all connections. The assertion occurred as to the JavaVM was not stopped prior to dropping the connection it was running on. This is now fixed, the VM is stopped prior to dropping the connection.



CR:336507
CR Number:   336507
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.1 1670 28 Oct 2003 Fixed
9.0.0 1229 28 Oct 2003 Fixed
Description
The XML output from the built-in HTTP server could have been missing rows, if those rows

only contained null values. The has been fixed.





--------------------------------------华丽的分割线-------------------------------------------------------------------------
之前就已经研发成功了能够从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等等。
+-------------------------------------华丽的分割线-------------------------------------------------------------------------