远程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:313786
CR Number:   313786
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.2 2247 12 Mar 2004 Fixed
9.0.1 1832 12 Mar 2004 Fixed
9.0.0 1287 12 Mar 2004 Fixed
8.0.3 5117 12 Mar 2004 Fixed
8.0.2 4392 12 Mar 2004 Fixed
Description
The Database Initialization utility dbinit, could have failed if the SQLCONNECT environment variable specified a database file name (DBN). This has been fixed so that the SQLCONNECT environment variable does not affect dbinit.



CR:313788
CR Number:   313788
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)
8.0.3 4622 01 Apr 2003 Fixed
8.0.2 4233 01 Apr 2003 Fixed
Description
When using the Managed provider, columns with a TIME datatype are mapped to .NET TimeSpan DataRows when VS.NET generates strong-typed DataSet classes for XSD files. The provider was failing to fill the DataSet because the it was returning DateTime values for the TIME columns and TimeSpan values could be cast to DateTime values. This was fixed by converting TIME columns to TimeSpan values and adding a new method GetTimeSpan to the AsaDataReader class.



CR:313797
CR Number:   313797
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)
8.0.3 4622 31 Mar 2003 Fixed
8.0.2 4233 31 Mar 2003 Fixed
Description
An InvalidCastException would have been thrown by the .NET Common Language Runtime when generating an UPDATE command that had a SELECT sub-querey which returned decimal columns. This has been fixed.



CR:313803
CR Number:   313803
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)
8.0.3 4622 31 Mar 2003 Fixed
8.0.2 4233 31 Mar 2003 Fixed
Description
When executing a parameterized query to insert a row into a table, if a parameter value was of type DECIMAL and the precision was not specified, an incorrect value was inserted into the table. Fixed by setting the precision to 30 for decimal values with an unspecified precision.



CR:314159
CR Number:   314159
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Solaris
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
7.0.4 3436 01 Apr 2003 Fixed
12 May 2003 Fixed
Description
Adding columns between creating and selecting from a view caused the server to fail.



CR:314168
CR Number:   314168
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)
8.0.3 4624 28 Mar 2003 Fixed
8.0.2 4234 28 Mar 2003 Fixed
8.0.1 3109 31 Mar 2003 Fixed
Description
Assertions 100307 or 101412 could have occurred with encrypted databases when reading pages from the temporary file or a dbspace. This has been fixed.



CR:314230
CR Number:   314230
Product Name:   UltraLite
Product Component:   SQL Preprocessor
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4623 31 Mar 2003 Fixed
8.0.2 4234 31 Mar 2003 Fixed
8.0.1 3109 31 Mar 2003 Fixed
8.0.0 2560 31 Mar 2003 Fixed
Description
Under certain conditions, the SQL preprocessor (or ULGEN) would have created incorrect UltraLite code for queries which used an index in which there were columns ordered as DESCENDING. This resulted in no rows being retrieved for the query. This has now been fixed.



CR:314279
CR Number:   314279
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)
8.0.3 4625 01 Apr 2003 Fixed
8.0.2 4234 01 Apr 2003 Fixed
8.0.1 3109 01 Apr 2003 Fixed
Description
When sequentially scanning a large table, there was the possibility of cache corruption when the scan completed. This was unlikely to be observed on single processor NT/W2K/XP platforms, and was likely to be rare in any case. It is now fixed.



CR:314725
CR Number:   314725
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)
8.0.3 4643 23 Apr 2003 Fixed
8.0.2 4244 23 Apr 2003 Fixed
8.0.1 3118 04 Jun 2003 Fixed
Description
If a procedure generated a result set using a SELECT on a view, and the view was on a table that was part of a SQL Remote publication, and the first call to the procedure was made using a read-only cursor, subsequent calls to the procedure could have resulted in a "column not found" error. This error referred to columns in the SUBSCRIBE BY part of the publication definition. Now, subsequent calls to the procedure will treat the SELECT as read-only.
Workaround Description
 Use dbisql



CR:314828
CR Number:   314828
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)
8.0.3 4631 08 Apr 2003 Fixed
8.0.2 4239 08 Apr 2003 Fixed
8.0.1 3110 08 Apr 2003 Fixed
7.0.4 3438 08 Apr 2003 Fixed
Description
Error strings returned from the server through a TDS connection, could have had garbage characters preceding the message. This has been fixed



CR:314830
CR Number:   314830
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)
8.0.3 4630 04 Apr 2003 Fixed
8.0.2 4237 04 Apr 2003 Fixed
8.0.1 3110 04 Apr 2003 Fixed
8.0.0 2360 04 Apr 2003 Fixed
Description
Passing large blobs to external functions was slow, as an "optimization" for quickly reading blobs was not being used. There was also a possibility of incorrect results when accessing blobs piecewise. It was possible that if the first fetch was for exactly 255 bytes, the second fetch would have returned the first n bytes again, not the next n bytes (following the first 255). These two problem have now been fixed.



CR:314861
CR Number:   314861
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)
8.0.3 4630 08 Apr 2003 Fixed
8.0.2 4237 08 Apr 2003 Fixed
8.0.1 3110 08 Apr 2003 Fixed
7.0.4 3438 08 Apr 2003 Fixed
Description
The MobiLink server may have crashed when executing an ODBC statement that had been previously executed. This would only have occurred if the script happened to be identical for two different tables. This was most likely to have occurred when using download_delete_cursor and the truncate table feature, where the script was typically "select NULL". One workaround is to add some comment text to the script to make it unique. This problem has now been fixed.



CR:314893
CR Number:   314893
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)
8.0.3 4632 11 Apr 2003 Fixed
8.0.2 4239 11 Apr 2003 Fixed
8.0.1 3110 11 Apr 2003 Fixed
8.0.0 2360 11 Apr 2003 Fixed
Description
When using Java to write MobiLink synchronization logic, if the connection to the MobiLink server used the JDBC-ODBC bridge, a fetched timestamp could have had an incorrect value. In particular, the value would have been wrong if the timestamp column in the database had non-zero milliseconds. This has now been fixed.
Workaround Description
 Converting the datetime value to varchar in the sql select statement seems to work in some cases.



CR:314969
CR Number:   314969
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)
8.0.3 4630 04 Apr 2003 Fixed
8.0.2 4237 04 Apr 2003 Fixed
8.0.1 3110 04 Apr 2003 Fixed
8.0.0 2360 04 Apr 2003 Fixed
Description
If the Database Object Debugger was launched from Sybase Central and a connection made, then if dbisql was also launched from Sybase Central and a connected made, it, the Object Debugger and Sybace Central would all have hung. This has now been fixed.



CR:314977
CR Number:   314977
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)
8.0.3 4630 08 Apr 2003 Fixed
8.0.2 4243 08 Apr 2003 Fixed
7.0.4 3438 08 Apr 2003 Fixed
Description
The OLEDB provider had a number of problems when used it with a Borland Delphi built application:

- the provider could have overrun memory when fetching 200 bytes or less into a buffer smaller or the same size as the actual data, when fetching binary data into DBTYPE_VARIANT or any data into DBTYPE_STR or DBTYPE_BYTES. This could have caused the application to crash as well as other problems.

- the provider could have used an incorrect length when getting data from parameters of type DBTYPE_VARIANT containing DBTYPE_ARRAY. This could have caused the wrong length of data to be used and possibly the application to crash.

- NULL binary input parameters may have resulted in E_OUTOFMEMORY

- pessimistic locking was used when optimistic locking should have been used, resulting in reduced concurrency and possible application blocking.



These problems have now been fixed. In 7.0.4 and 8.0.2, the locking type has not been changed since an 8.0.0 or higher engine is required and the change can cause the engine to choose a different cursor type.



CR:315129
CR Number:   315129
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)
8.0.3 4681 30 May 2003 Fixed
8.0.2 4264 30 May 2003 Fixed
8.0.1 3117 30 May 2003 Fixed
8.0.0 2360 30 May 2003 Fixed
Description
The server could have failed with assertion 101414 - 揂WE mapping failed", even when Address Windowing Extentions were not being used, (ie -cw). This was unlikely to occur on uniprocessor systems, so forcing the engine to run on a single processor might be a work around. This is now fixed.



CR:315130
CR Number:   315130
Product Name:   MobiLink
Product Component:   HotSync Conduit
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4519 07 Apr 2003 Fixed
8.0.2 4208 07 Apr 2003 Fixed
Description
Extra debug logging to the HotSync or ScoutSync log can now be enabled for the Palm conduit by setting environment variables.



UL_DEBUG_CONDUIT: When this variable is set, a message box will pop up on conduit loading/unloading to confirm entry into the conduit. Requires user intervention to proceed.

UL_DEBUG_CONDUIT_LOG: When set to 1, basic logging will be written to the log, possibly including synch parametrs, registry locations and attempts to load libraries. When set to 2, basic logging as well as more detailed IO logging will be written to the log



CR:315241
CR Number:   315241
Product Name:   UltraLite
Product Component:   UltraLite Schema Painter
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4638 17 Apr 2003 Fixed
8.0.2 4242 17 Apr 2003 Fixed
Description
The Schema Painter was unable to open a user defined XML file that contained a publication with a large number of tables. When the user tried to open this schema file,

the Schema Painter failed, returning an error indicating that the publication could not be created because a table did not exist. The table name displayed in the error sometimes contained a full table name, but always contained various garbage characters. This is now fixed.



CR:315262
CR Number:   315262
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)
8.0.3 4631 08 Apr 2003 Fixed
8.0.2 4239 08 Apr 2003 Fixed
Description
When opening a query in dbisql, parts of some of the query may have had the quotes stripped off. The query editor's parser was being too agressive when parsing parts of a SQL statement. This is now fixed.



CR:315340
CR Number:   315340
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)
8.0.2 4249 01 May 2003 Fixed
8.0.3 4653 01 May 2003 Fixed
Description
The server could crash while executing a remote procedure call that takes input parameters. This would only occurred if the remote server was using the ODBC server class This has been fixed.



CR:315364
CR Number:   315364
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 3446 29 Apr 2003 Fixed
Description
If an application executed a single SQL statement that ended with a semicolon, the server would have interpreted this as batch and did not allow output parameters. In the following ODBC example the prepare of a procedure call has a semicolon at the end which causes an error during execution:

SQLPrepare( "Call sp1( ?, ? );" )

SQLBindParam( parameter 1, of type SQL_PARAM_OUTPUT)

SQLBindParam( parameter 2, of type SQL_PARAM_INPUT)

SQLExecute; --> HY105 error (invalid parameter type)

This problem has now been fixed



CR:315382
CR Number:   315382
Product Name:   MobiLink
Product Component:   Java Plugin for Sybase Central
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.1 3112 23 Apr 2003 Fixed
8.0.3 4645 23 Apr 2003 Fixed
8.0.2 4245 23 Apr 2003 Fixed
Description
When modifying a MobiLink password for a user in the user's properties page, the password would have been updated to the wrong value. This has now been corrected.



CR:315386
CR Number:   315386
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)
8.0.3 4632 10 Apr 2003 Fixed
8.0.2 4239 10 Apr 2003 Fixed
Description
In certain rare situations, the database server could have crashed while running dbunload with the -ar, -an or -ac commandline options. This problem has now been fixed.



CR:315388
CR Number:   315388
Product Name:   UltraLite
Product Component:   Code Generator
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 1637 19 Sep 2003 Fixed
8.0.3 4783 19 Sep 2003 Fixed
Description
The analyzer generated macros UL_CAST_DOUBLE_LONG and UL_CAST_LONG_DOUBLE were not defined. For example, the following query:



SELECT CAST( POWER( 2, T.exp ) as UNSIGNED INTEGER) FROM T



would have failed to compile. This has been fixed, the macros are now defined.



CR:315415
CR Number:   315415
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   6.0.04
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4631 10 Apr 2003 Fixed
8.0.2 4239 10 Apr 2003 Fixed
Description
When attempting to reload a database with dbisqlc, it could have failed with an error that it could not open a data file that was greater than 2GB in size. This problem has been corrected. A workaround is to use dbisql (Java version); however, dbisql is not available on deployment platforms.



CR:315471
CR Number:   315471
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 4581 11 Apr 2003 Fixed
8.0.2 4215 11 Apr 2003 Fixed
Description
A new built-in function has been added with the following syntax:



DB_EXTENDED_PROPERTY ( { property_id | property_name },

[, property-specific_argument

[, { database_id | database_name } ] ] )



This new function, db_extended_property(), is similar to db_property(), but it allows an optional property-specific string parameter to be specified. The interpretation of the property-specific argument depends on the property id or name specified in the first argument. Calling db_extended_property( x ) is equivalent to calling db_property( x ).



Two new properties have been added: FileSize and FreePages. Each of these properties can take an optional argument which specifies the dbspace for which the property is being requested.



The dbspace can be specified as any of the following:

- the name of the dbspace

- the file_id of the dbspace

- 'translog' to refer to the transaction log file

- 'temp' to refer to the temp file

- 'writefile' to refer to the write file



If the dbspace does not exist, the property function will return null. If the name of a dbspace is specified and an id or name of a database which is not the database of the current connection is also specified, the function will also return null (since it is not possible to query the system tables across databases) except that the well-known name 'system' will still be accepted.



FileSize returns the length of the specified database file in pages. For the system dbspace on databases created with 8.0.0 or later, FileSize includes the size of the checkpoint log which is located at the end of the database file.



FreePages returns the number of free pages in the specified file. FreePages is only supported on databases created with 8.0.0 or later. For the transaction log, FreePages returns the number of completely empty, unused pages between the current logical end of the log and the physical end of the log file. When using a write file, FreePages on a dbspace will return the number of free pages in the virtual dbspace represented by writefile. FreePages on the writefile itself returns the number of pages free in the writefile that can be used to create new mapped versions of database pages. That is, pages may appear free to a dbspace but, from the point of view of the write file itself, they are actually allocated and in use inside the write file as images of pages.



If no property-specific argument is provided for either of these properties, the system dbspace is assumed.



CR:315473
CR Number:   315473
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)
8.0.3 4566 11 Apr 2003 Fixed
8.0.2 4201 11 Apr 2003 Fixed
Description
A new command line option -vp (or -v+), "show progress offsets", has been added to the MobiLink server. With this newoption, the MobiLink server will log the consolidated and remote progress offsets in its output file for each publication in every ynchronization. The publications may include those that are explicitly involved in the current synchronization, as well as the ones that are not explicitly involved in the currently synchronization, but in the same remote database. If the consolidated progress offsets do not match the remote progress offsets, the MobiLink server will also print these offsets in its output file, no matter whether -vp or -v+ is used or not.



UltraLite sequence numbers (ie. ml_user.commit_state on the consolidated side) are also shown.



CR:315474
CR Number:   315474
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   AIX
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4653 02 May 2003 Fixed
8.0.2 4250 02 May 2003 Fixed
Description
When run on an AIX machine using IBM's Power4 processor, the server could have hung or crashed. When the server would have hung, the CPU usage would have gone to 100%. This problem would only have bee seen on SMP machines. The P/630, P/670, and P/690 machines are some of the IBM machines that currently use the Power4 chip. This has now been fixed, but a workaround is to use the bindprocessor command to bind the ASA server processes to one CPU.



CR:315475
CR Number:   315475
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)
8.0.2 4239 11 Apr 2003 Fixed
Description
The syncase125.sql script, which sets up MobiLink system tables, was not updated when 8.0.2 was released. It is now fixed, but can be updated manually by ading the following to the end of the file:



exec sp_procxmode 'ml_add_user', 'anymode'

exec sp_procxmode 'ml_add_table_script', 'anymode'

exec sp_procxmode 'ml_add_lang_table_script', 'anymode'

exec sp_procxmode 'ml_add_java_table_script', 'anymode'

exec sp_procxmode 'ml_add_dnet_table_script', 'anymode'

exec sp_procxmode 'ml_add_connection_script', 'anymode'

exec sp_procxmode 'ml_add_lang_connection_script', 'anymode'

exec sp_procxmode 'ml_add_java_connection_script', 'anymode'

exec sp_procxmode 'ml_add_dnet_connection_script', 'anymode'

go



CR:315543
CR Number:   315543
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)
8.0.3 4633 14 Apr 2003 Fixed
8.0.2 4240 14 Apr 2003 Fixed
8.0.1 3110 14 Apr 2003 Fixed
8.0.0 2360 14 Apr 2003 Fixed
Description
If a client's character set did not match the database's character set, the embedded SQL GET DATA statement could have returned incorrect results. This is now fixed.



CR:315556
CR Number:   315556
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)
8.0.3 4632 11 Apr 2003 Fixed
8.0.2 4240 11 Apr 2003 Fixed
Description
Complex queries with sargable IN predicates may have had a less than optimal plan, due to the optimizer underestimating the size of intermediate result sets.

For example, if a table T has a primary key on the columns (T.A, T.B) and, in a complex query, the predicates "T.A = constant" and "T.B IN ( constant1, constant2, ..)" are used to create a partial index scan on (T.A, T.B), the number of rows returned by the partial index scan may have been underestimated. This has been corrected so that the optimizer now calculates a reasonable estimate.



CR:315593
CR Number:   315593
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)
8.0.3 4650 28 Apr 2003 Fixed
8.0.2 4247 28 Apr 2003 Fixed
Description
If a column was defined as NUMERIC and the GLOBAL AUTOINCREMENT value generated for an inserted row would have been greater than 2**31, the value assigned to the column and the value returned for @@identity were incorrect. This has been fixed. Note that the use of BIGINT is recommended in this situation for improved efficiency.



CR:315656
CR Number:   315656
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)
8.0.3 4686 06 Jun 2003 Fixed
8.0.2 4268 06 Jun 2003 Fixed
Description
The shortcut to the sample database installed on Japanese Windows CE machines was referencing asademoj.db, instead of asademo.db. This has now been corrected.



CR:315662
CR Number:   315662
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4645 24 Apr 2003 Fixed
8.0.2 4245 24 Apr 2003 Fixed
Description
If MobiLink called a user implemented .NET script and the script had an incorrect signature (argument list), then the MobiLink server would have shut down. The MobiLink server now aborts the synchronization only and continues to accept connections.
Workaround Description
 The class definition has to matche what Mobilink is expecting.



CR:315667
CR Number:   315667
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)
8.0.3 4633 15 Apr 2003 Fixed
8.0.2 4240 15 Apr 2003 Fixed
Description
When a Smart Device application, that had opened a Data Reader, terminates without closing the connection or the Data Reader, a managed AsaException and a native exception would have occurred. This is now fixed by closing the Data Reader when the connection is closed.



CR:316016
CR Number:   316016
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)
8.0.3 4637 16 Apr 2003 Fixed
8.0.2 4242 16 Apr 2003 Fixed
Description
If a query in a stored procedure contained a builtin function that was used either with no parameters or only constant parameters, then the function might only have been evaluated periodically, not every time that the query was executed. This was a result of plan caching, which cached the results of evaluated functions. For deterministic builtin functions, the caching did not change behaviour as the same answer would be returned for every execution of the function. However, for some functions such as rand() or connection_property(), the value of the function could be different even though the identical parameters were supplied. The caching logic has been changed so that functions which might return different values for the same inputs are now no longer cached. When using a reusable cursor, expressions over these builtin functions may now be slightly less efficient.



CR:316036
CR Number:   316036
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 1576 27 Jun 2003 Fixed
9.0.0 1180 27 Jun 2003 Fixed
8.0.3 4707 27 Jun 2003 Fixed
8.0.2 4279 27 Jun 2003 Fixed
8.0.1 3132 07 Jul 2003 Fixed
Description
When the MobiLink Server was running against ASE, if the ASE server was shut down for some reason and restarted, the MobiLink server would have kept running, not knowing the ASE server had been restarted. The MobiLink server will now detect that the ASE server has been restarted and reconnect.



CR:316073
CR Number:   316073
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)
8.0.3 4638 16 Apr 2003 Fixed
8.0.2 4242 16 Apr 2003 Fixed
8.0.1 3111 16 Apr 2003 Fixed
Description
Histogram updates during query processing can, in some rare and yet undetermined circumstances, cause some selectivity estimates to become invalid. This in turn can cause inefficient query plans to be chosen. The problem can be detected by looking at the selectivity estimates in query plans, the estimates can show up as values such as -1.IND#. The server will now clean up these invalid estimates when loading histograms.



CR:316104
CR Number:   316104
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4650 28 Apr 2003 Fixed
8.0.2 4247 28 Apr 2003 Fixed
7.0.4 3446 28 Apr 2003 Fixed
Description
If an event handler was running when an attempt was made to upgrade a database, the upgrade would have failed to start, since another connection was active. Now the upgrade will wait for the event handler to complete before proceeding.
Workaround Description
 Disable the event at DatabaseStart before the upgrade OR start the database, wait untill the event is finished and then start the upgrade.



CR:316106
CR Number:   316106
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)
8.0.3 4637 16 Apr 2003 Fixed
8.0.2 4242 16 Apr 2003 Fixed
Description
If the Java VM failed on server startup, the server might then have crashed when shutdown. This has now been fixed.



CR:316107
CR Number:   316107
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   4.1.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.0 1052 26 May 2003 Fixed
Description
Attempting to use the Migrate Database wizard to migrate tables from a remote server, for which the database name was not specified, would have failed if the remote server was anything other than an ASA server. This has been fixed.



CR:316231
CR Number:   316231
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4645 25 Apr 2003 Fixed
8.0.2 4245 25 Apr 2003 Fixed
Description
If a procedure definition contains a percent sign, '%', it is treated either as the modulo operator or a comment delimiter, based on the setting of the Percent_as_comment option. If this option was set to OFF before such a procedure was created, the percent sign would have been stored in the catalog; otherwise, the it would have been changed to the double dash comment delimiter. If a procedure definition stored in the catalog contained a percent sign and the first user to call the procedure had Percent_as_comment set to ON, the procedure may have failed to load or may have performed incorrectly. Also, rebuilding the database may have failed, as the percent sign would have been treated as a comment delimiter and could have resulted in a syntax error. This has been fixed. Existing procedures containing a percent sign should be re-created after this fix before attempting to rebuild the database. A workaround is to use the remainder() function instead of using the percent sign as modulo operator.
Workaround Description
 Possible workarounds

- set Percent_as_comment set to OFF to everyone

- right after each server start, the first user must be the one who has Percent_as_comment = OFF



CR:316408
CR Number:   316408
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)
8.0.3 4641 11 Jul 2003 Fixed
8.0.2 4243 11 Jul 2003 Fixed
8.0.1 3111 11 Jul 2003 Fixed
8.0.0 2360 11 Jul 2003 Fixed
Description
Executing a CREATE DATABASE statement while the server was under a heavy load, could have resulted in the server hanging. This has been fixed.



CR:316467
CR Number:   316467
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)
8.0.3 4643 21 Apr 2003 Fixed
8.0.2 4244 21 Apr 2003 Fixed
Description
If ExecuteNonQuery was called in an ASACommand object to drop a table that didn't exist, an error would have occurred. After that the AsaCommand object could no longer have been used. This has now been fixed.



CR:316471
CR Number:   316471
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)
8.0.3 4643 21 Apr 2003 Fixed
8.0.2 4244 21 Apr 2003 Fixed
Description
If an error occurred while transferring data between the old and new databases using one of the dbunload command-line options -ac, -an or -ar switches, dbunload could have hung and the server would have used 100% of one CPU. Now dbunload will report the appropriate error message(s).



CR:316472
CR Number:   316472
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)
8.0.3 4643 23 Apr 2003 Fixed
8.0.2 4244 23 Apr 2003 Fixed
Description
When using the Schema Painter on Windows 9x, a conversion from usm to xml produced a corrupt xml file that would not then open in the Schema Painter, and could not have been converted back to a usm file. This has now been fixed.



CR:316673
CR Number:   316673
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)
8.0.3 4639 23 Apr 2003 Fixed
8.0.2 4245 23 Apr 2003 Fixed
Description
If a table is locked exclusively with LOCK TABLE ... IN EXCLUSIVE MODE, the server will by default, no longer acquire row locks for the table. This can result in a significant performance improvement if extensive updates are made to the table in a single transaction, especially if the table is large relative to cache size. It also allows for atomic update operations that are larger than the lock table can currently handle (approx. 2 - 4 million rows).



A negative side effect of this change is that keyset cursors over a table locked in this fashion will not work as expected (they will return row changed warnings for every row in the cursor if any row in the database has been modified). This is most likely to affect updateable cursor with an ORDER BY (in which case the engine could turn it into a keyset cursor).



This behaviour can be disabled by setting the SUBSUME_ROW_LOCKS option 'off' ('on' by default for 9.x and up). While this feature has been added to 8.0, it has been left 'off' by default.



CR:316688
CR Number:   316688
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 4644 24 Apr 2003 Fixed
8.0.2 4245 24 Apr 2003 Fixed
Description
When using the JDBC-ODBC bridge to select a variable of type java.math.BigDecimal, the value would have been returned as a binary instead of as a string.

For example:



create variable d java.math.BigDecimal;

set d = new java.math.BigDecimal(1000);

select d;



This problem has now been fixed.



CR:316700
CR Number:   316700
Product Name:   MobiLink
Product Component:   Monitor
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4644 24 Apr 2003 Fixed
8.0.2 4245 24 Apr 2003 Fixed
Description
The MobiLink Monitor window would always show a title of "Started - MobiLink Monitor" after saving a file or using the View/Go To command. This has been fixed.



CR:316870
CR Number:   316870
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)
8.0.3 24 Apr 2003 Fixed
8.0.2 4245 24 Apr 2003 Fixed
8.0.1 3112 24 Apr 2003 Fixed
8.0.0 2360 24 Apr 2003 Fixed
7.0.4 3502 31 Oct 2003 Fixed
Description
When a commit was done by a transaction while it is in the middle of a page level backup, it could have caused database corruption if a subsequent operation that required a page level undo (ie ALTER TABLE or LOAD TABLE on a table with existing data) failed and a checkpoint was done while the operation was in progress. This is now fixed.



Note that this is not likely to affect most users, since the existing backup tools do not exhibit this behaviour, but it may have occurred with a user written backup tool using the page level backup api.



CR:316904
CR Number:   316904
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)
8.0.3 4645 24 Apr 2003 Fixed
8.0.2 4245 24 Apr 2003 Fixed
Description
Attempting to create a proxy table to a remote table with a primary key column which was a keyword would have failed. For example, attempting to create a proxy table to a table that had a primary key column named "time" would have failed. This problem has now been fixed.



CR:316905
CR Number:   316905
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)
8.0.3 4645 24 Apr 2003 Fixed
8.0.2 4245 24 Apr 2003 Fixed
Description
When using sa_migrate() to migrate a set of tables owned by a particular user, the migration scripts would also migrate any views, global temporary tables and system tables that were also owned by that user. The migration scripts now only migrates base tables.



CR:316908
CR Number:   316908
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)
8.0.3 4633 24 Apr 2003 Fixed
8.0.2 4240 24 Apr 2003 Fixed
Description
The version number reported by the Managed Provider dll did not contain the build number. The number displayed was always 8.0.2.0. This has now been fixed to also display the build number.



CR:316976
CR Number:   316976
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)
8.0.3 4646 25 Apr 2003 Fixed
8.0.2 4246 25 Apr 2003 Fixed
8.0.1 3112 25 Apr 2003 Fixed
Description
If an expressions which never returns NULL, even when its arguments were NULL, could have caused an assertion failure when used in a query containing an outer join if hash join was selected as the execution method.

For example, the following query would have caused the problem to occur:



select e.emp_id ee, isnull( d.dept_head_id, 999 )de

from employee e left outer join department d on ee=de

order by emp_fname



Errors include the following: "Unknown Device Error", although other fatal errors or assertion failures were possible. This has now been fixed.



CR:317082
CR Number:   317082
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)
8.0.3 4664 08 May 2003 Fixed
8.0.2 4254 08 May 2003 Fixed
8.0.1 3115 08 May 2003 Fixed
7.0.4 3451 08 May 2003 Fixed
Description
After an application connected to a local engine or server via the shared memory, the local application could not be killed using the 'End Task' action in the task manager -- even if the user was an Administrator. The problem was introduced by the change for QTS 310658 (Non-administrative user could kill database server started as LocalSystem NT service). The problem was reproduced on Windows 2000 Professional SP3 but could not be reproduced on Windows 2000 Server SP3. This has now been corrected.
Workaround Description
 Kill the application and not the process.



CR:317112
CR Number:   317112
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)
8.0.3 4646 25 Apr 2003 Fixed
8.0.2 4246 25 Apr 2003 Fixed
Description
The QueryEditor was not qualifying tables with the owner name, which lead to problems when there were multiple tables with the same name. Now it uses the users id if it matches one of the tables owners, otherwise it guesses and picks the last table found with a matching name.



CR:317126
CR Number:   317126
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4646 25 Apr 2003 Fixed
8.0.2 4246 25 Apr 2003 Fixed
8.0.1 3112 25 Apr 2003 Fixed
7.0.4 3445 25 Apr 2003 Fixed
Description
When using an OLE DB RowsetViewer with an OLE DB Tables schema rowset ( or other schema rowsets ), without setting the TABLE_SCHEMA restriction (or other SCHEMA restrictions), the returned rowset only contained entries created by the current user, the other entries are missing. This has now been fixed.



CR:317240
CR Number:   317240
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4647 28 Apr 2003 Fixed
8.0.2 4246 28 Apr 2003 Fixed
8.0.1 3112 28 Apr 2003 Fixed
Description
Procedure profiling was not availble on a case-sensitive db (the menu entries to use it were missing). This has now been fixed.



CR:317268
CR Number:   317268
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)
8.0.3 4647 28 Apr 2003 Fixed
8.0.2 4246 28 Apr 2003 Fixed
Description
The QueryEditor was not parsing the ORDER BY clause correctly,if the query had a HAVING clause. This is now fixed.



CR:317279
CR Number:   317279
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Generic
Original Version:   6.0.01
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4647 28 Apr 2003 Fixed
8.0.2 4246 28 Apr 2003 Fixed
Description
The Windows CE ODBC driver was using the connection parameters from the first connection's FILEDSN for future connections even, if a different FILEDSN was subsequently used. This has been fixed.



CR:317464
CR Number:   317464
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)
8.0.3 4651 29 Apr 2003 Fixed
8.0.2 4248 29 Apr 2003 Fixed
Description
When running the server with the -q switch, if an error occurred during startup, a messagebox containing the error would still have appearred. Now, the error dialog will not be displayed and the engine will silently fail to start. However, if the server is running as a service, the error message will be logged to the application event log
Workaround Description
 None.



CR:317536
CR Number:   317536
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)
8.0.3 4652 30 Apr 2003 Fixed
8.0.2 4248 30 Apr 2003 Fixed
8.0.1 3113 30 Apr 2003 Fixed
Description
The COMMENT ON COLUMN statement could sometimes have set an incorrect comment string. This would have been more likely to occur if the statement appeared as part of a batch containing other strings. The comment will now be set correctly.
Workaround Description
 Use DBISQL only. This is not preferred. Customer would rather use C tools than java tools.



CR:317600
CR Number:   317600
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)
7.0.4 3446 29 Apr 2003 Fixed
Description
Fetches from Microsoft Access 2000 to an ASA database could have been significantly slower than from Access 97. The performance difference would have been more noticeable when fetching over a LAN or WAN. This has been fixed.



CR:317604
CR Number:   317604
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)
8.0.3 4651 29 Apr 2003 Fixed
8.0.2 4248 29 Apr 2003 Fixed
8.0.1 3113 29 Apr 2003 Fixed
7.0.4 3446 29 Apr 2003 Fixed
Description
When an ADO recordset which returned multiple resultsets was opened, fetching the second resultset would have caused the application to crash. This problem, which has now been fixed, was introduced by the change for QTS 310101.



CR:317638
CR Number:   317638
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4651 29 Apr 2003 Fixed
8.0.2 4248 29 Apr 2003 Fixed
Description
The reload.sql script created by dbunload was not quoting user names that apppeared in CREATE SYNCHRONIZATION USER statements, causing a rebuild to fail if the username contained spaces or consisted of numbers only. This has been fixed.



CR:317705
CR Number:   317705
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)
8.0.3 4653 02 May 2003 Fixed
8.0.2 4250 02 May 2003 Fixed
Description
A System.InvalidCastException was thrown when calling AsaDataAdapter.Fill, if a column value was null and the type of the corresponding DataColumn was different from the type of the database column. Fixed by returning a DBNull.Value if the column is null.



CR:317780
CR Number:   317780
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4654 02 May 2003 Fixed
8.0.2 4250 02 May 2003 Fixed
Description
When using a keyset-driven (value sensitive) cursor, attempting to fetch from the cursor after an error was reported on a previous fetch could have caused the server to crash. This has been fixed, and now fetches on any cursor types, after an error has been reported on a prior fetch, return the error: "Cursor not in a valid state", -853



CR:317852
CR Number:   317852
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)
8.0.3 4653 01 May 2003 Fixed
8.0.2 4253 12 May 2003 Fixed
8.0.1 3113 12 May 2003 Fixed
Description
A stored procedure or function that concatenating integers as strings, could have caused a server crash.



For example:

declare x integer;

set x = 888;

set x = x || 888;



This is now fixed.



CR:317916
CR Number:   317916
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.0 1062 28 May 2003 Fixed
8.0.3 4678 28 May 2003 Fixed
8.0.2 4260 28 May 2003 Fixed
Description
When a program using ADO.NET is built, the version number including the build number of the iAnywhere.Data.AsaClient.dll is stored in the program. When an EBF was installed, the old version of the data provider dll was replaced with a newer one, and the program would then not have load correctly. This has been fixed by installing a 'publisher policy' file that tells the .NET Framework to map older versions of the data provider dll to the newly installed version.
Workaround Description
 None.



CR:317930
CR Number:   317930
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)
8.0.3 4653 01 May 2003 Fixed
8.0.2 4249 01 May 2003 Fixed
Description
The Query Editor was producing bad SQL when given a query of the form:



SELECT *

FROM a join b,

(c join d ) join e



The parser was not processing the comma properly when it was followed by a bracket. This has now been fixed.



CR:317934
CR Number:   317934
Product Name:   UltraLite
Product Component:   Code Generator
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4655 05 May 2003 Fixed
8.0.2 4251 05 May 2003 Fixed
Description
When the -x command-line option was used with ulgen, some of the filenames generated with #include statements used absolute file names. This has now been changed to instead generate relative file names.
Workaround Description
 Post-process the generated files to strip out the hard-coded path.



CR:317953
CR Number:   317953
Product Name:   MobiLink
Product Component:   scripts
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.0 1069 26 May 2003 Fixed
Description
In the Mobilink system tables, ml_script and ml_script_version, the datatype LONG VARCHAR was being used in Oracle databases. Since Oracle does not have a LONG VARCHAR datatype, this column was being created with a LONG datatype, but LONG is now being deprecated in Oracle 9i. The LONG columns have now been changed to the CLOB datatype, and existing databases will be changed when upgraded.



CR:317962
CR Number:   317962
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)
8.0.3 4653 01 May 2003 Fixed
8.0.2 4250 01 May 2003 Fixed
8.0.1 3113 01 May 2003 Fixed
Description
The UNCONDITIONALLY keyword of the STOP ENGINE statement was not being handled correctly by dbisql. When executing a STOP ENGINE statement, a STOP ENGINE UNCONDITIONALLY statement was actually sent to the database server, and when executing STOP ENGINE UNCONDITIONALLY, a STOP ENGINE statement was sent to the database. This has now been fixed.



CR:317965
CR Number:   317965
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)
8.0.3 4653 01 May 2003 Fixed
8.0.2 4250 01 May 2003 Fixed
Description
The STR function could have returned invalid data or crashed the server, if the numeric expression parameter was less than -1E126. This has been fixed.



CR:318137
CR Number:   318137
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4654 06 May 2003 Fixed
8.0.2 4250 06 May 2003 Fixed
8.0.1 3113 06 May 2003 Fixed
Description
A shared memory connection could have failed on Windows CE platforms after unloading and reloading dbodbc8.dll.

For example, if a client application:

1) made a shared memory connection

2) disconnected

3) unloaded dbodbc8.dll

4) reloaded dbodbc8.dll again

5) attempted another shared memory connection within a few seconds of the previous disconnect

Then the second connection attempt could fail. A debug log (generated using the LOGFILE connection parameter) would indicate that shared memory could not be started. This has been fixed.



CR:318140
CR Number:   318140
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4654 05 May 2003 Fixed
8.0.2 4250 05 May 2003 Fixed
Description
If the method ResultSet.getAsciiStream was used to get an AsciiStream of a string column (char, varchar or long varchar), the AsciiStream returned would not have given the proper ascii representation of the string. This is now fixed.



CR:318315
CR Number:   318315
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)
8.0.3 4657 06 May 2003 Fixed
8.0.2 4250 06 May 2003 Fixed
Description
After connecting using jConnect, attempting another connection to a different server would have failed, if a different port was used. This problem is now fixed.



CR:318320
CR Number:   318320
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)
8.0.3 4657 06 May 2003 Fixed
8.0.2 4251 06 May 2003 Fixed
Description
Viewing data from a proxy table which referenced a table which no longer existed, would have caused dbisql to report an internal error. This problem appeared only when connecting using the ASA JDBC-ODBC bridge. Note, this same problem affected the "Data" details panel in the Sybase Central ASA plug-in as well. Both are now fixed.



CR:318321
CR Number:   318321
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4657 06 May 2003 Fixed
8.0.2 4251 06 May 2003 Fixed
Description
The JDBC-ODBC bridge was not handling conversions from float to integer correctly. If setObject was used with an object type of float or double and a target SQL type of integer, smallint or bigint, calling executeUpdate would sometimes have incorrectly failed with a conversion error. This problem has now been fixed. In the cases where the conversion error is valid (as in an overflow or underflow case) the error is still returned as expected.



CR:318392
CR Number:   318392
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.0 1053 06 May 2003 Fixed
Description
Creating a udb file using a version 8.0.2 usm file, would have resulted in it being corrupt and could not have been opened. This is now fixed.



CR:318451
CR Number:   318451
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.0 1053 08 May 2003 Fixed
8.0.3 4658 08 May 2003 Fixed
8.0.2 4252 08 May 2003 Fixed
8.0.1 3113 08 May 2003 Fixed
8.0.0 2360 08 May 2003 Fixed
Description
When using a multi-row (wide) insert, if the first inserted row had NULL host-variables and also unspecified columns (defaulting to NULL), then the second inserted row could insert incorrect values into the unspecified columns. It was also possible for the server to write bad data to the transaction log, resulting in a corrupt transaction log.



CR:318486
CR Number:   318486
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4668 06 May 2003 Fixed
8.0.2 4252 06 May 2003 Fixed
Description
If Connection.createStatement or Connection.prepareStatement was used without specifying a particular result set type and concurrency, then the bridge would have used a default result set type of scroll sensitive, instead of forward only (as specified by the JDBC specification). The bridge now defaults to forward only. Note that the concurrency was, and still is, read only (as specified by the JDBC specification).



CR:318618
CR Number:   318618
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 1053 08 May 2003 Fixed
Description
If Sybase Central was started without an initial connection and a database was then created, after the creation progress dialog was closed, it waould have thrown a NullPointerException. This has been fixed.



CR:318632
CR Number:   318632
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)
8.0.3 4659 08 May 2003 Fixed
8.0.2 4252 08 May 2003 Fixed
8.0.1 3113 08 May 2003 Fixed
8.0.0 2360 08 May 2003 Fixed
Description
If fetching through a cursor backwards resulted in the cursor being positioned before the start of the result set, fetching forwards again might have returned error 100, "row not found", not the first row. The could only have happened if the query useed a comparison-based index scan which was bounded below (typically indexed_value >/>=/= constant). This is now fixed.



CR:318670
CR Number:   318670
Product Name:   UltraLite
Product Component:   Analyser Java Classes
Status:   Closed
OS:   Generic
Original Version:   8.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4659 09 May 2003 Fixed
8.0.3 4252 09 May 2003 Fixed
Description
When there was an internal analyzer error, the ulgen utility would have displayed the message 揟here was an error running the analyzer." So problems like the Java VM being out of memory might have been missed. Now it displays the name of the Java exception and a stack trace if possible. Also in this fix, the maximum Java VM heap size was bumped up from its default value to 200 MB (the current default setting for Sybase Central) to decrease the likelihood of running out of memory.



CR:318798
CR Number:   318798
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)
8.0.1 3113 09 May 2003 Fixed
7.0.4 3449 09 May 2003 Fixed
Description
ASA Servers running on Windows 2003 Server would not have been found by the dblocate utility. Now they are found.



CR:318803
CR Number:   318803
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)
8.0.3 4661 12 May 2003 Fixed
8.0.2 4253 12 May 2003 Fixed
8.0.1 3113 12 May 2003 Fixed
Description
Using the string concatenation operator ( || ) could have caused the server to crash or return a runtime error. This whould only have occurred if one of the strings was a long varchar.

Code of the following form could have caused the problem:

declare x long varchar;

select a into x from test where id = 1;

set x = x || ', this should fail with an error';



as a workaround use (it's actually more efficient):

declare x long varchar;

select a || ', this shouldn't fail' into x from test where id = 1;



This is now fixed.



CR:318816
CR Number:   318816
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.0 1025 09 May 2003 Fixed
Description
If a FORWARD TO statement was executed via EXECUTE IMMEDIATE in a stored procedure, a syntax error would have resulted. The statement will now be executed correctly.



CR:318823
CR Number:   318823
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)
8.0.3 4660 09 May 2003 Fixed
8.0.2 4253 09 May 2003 Fixed
Description
A NullReferenceException would have been thrown when creating a new connection if dbdata8.dll was not found in the iAnywhere.Data.AsaClient.dll's directory or the application's working directory and the registry key(HKEY_LOCAL_MACHINE\Software\Sybase\Adaptive Server Anywhere\8(9).0\Location) was not found. This is now fixed.



CR:318840
CR Number:   318840
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 4660 09 May 2003 Fixed
8.0.2 4253 09 May 2003 Fixed
Description
The statement, ALTER DBSPACE ... ADD ... which grows a dbspace, would not have executed if other connections to the server existed. The error 42W19 (-211) "Not allowed while '<username>' is using the database" would have been reported. The statement is now allowed to execute when other connections to the server exist.



CR:318855
CR Number:   318855
Product Name:   UltraLite
Product Component:   UltraLite for AppForge MobileVB
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4660 12 May 2003 Fixed
8.0.2 4253 12 May 2003 Fixed
Description
If a ULConnection object抯 Close method was called before a ULColumn or ULIndexSchema object was released, Visual Basic would have crashed. This would have happened if a ULColumn or ULIndexSchema object was declared globally for instance. This has been fixed.



CR:318868
CR Number:   318868
Product Name:   UltraLite
Product Component:   UltraLite for AppForge MobileVB
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4661 09 May 2003 Fixed
8.0.2 4253 09 May 2003 Fixed
Description
Attempting to call methods on a ULIndex object would have resulted in incorrect errors. This would have happened if the index was set before the table was opened, and then the table was opened and closed.

For example:



Set t = Conn.GetTable(揟)

Set idx = t.Schema.GetIndex(搃dx)

MsgBox 揘ame = & CStr(idx.Name) this is OK

t.Open

t.Close

MsgBox 揘ame = & CStr(idx.Name) this would fail



A similar problem existed with column objects (instead of index objects). This has been fixed, so now the last line of example will succeed.



CR:318872
CR Number:   318872
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)
8.0.3 1056 09 May 2003 Fixed
Description
If an error such as a conversion error occurred after some of the rows of a group-by had been processed, then the server could have crashed. For the crash to have occurred, the expressions in the grouped query must have contained strings or decimal values. This problem has been fixed



CR:318875
CR Number:   318875
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.0 1063 21 May 2003 Fixed
8.0.3 4668 21 May 2003 Fixed
8.0.2 4256 21 May 2003 Fixed
Description
A change in the syntax has been made to the built-in function:



DB_EXTENDED_PROPERTY ( { property_id | property_name },

[, property-specific_argument

[, { database_id | database_name } ] ] )



For the properties FileSize and FreePages, the property-specific_argument 'temp' has been changed to 'temporary', so that there is consistent usage for the temporary file across different statements. The orginal value 'temp' is still allowed for existing usage.



CR:318880
CR Number:   318880
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.0 1025 09 May 2003 Fixed
Description
If the Index Consultant was used to analyze a workload containing more than 999 statements, the server would have crashed. This has been fixed.



CR:318881
CR Number:   318881
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.0 1025 09 May 2003 Fixed
Description
If a database was not shut down cleanly after having run the Index Consultant, recovery would have failed and the database could not be started. This has been fixed.



CR:318929
CR Number:   318929
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 4660 09 May 2003 Fixed
8.0.2 4253 09 May 2003 Fixed
8.0.1 3113 09 May 2003 Fixed
Description
When run on linux, the plug-ins Help>Adaptive Server Anywhere x>Online Resources menu item did nothing. It has been removed.



CR:318930
CR Number:   318930
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.0 1056 09 May 2003 Fixed
Description
When a connection to a server attempted to start the IPX/SPX link on a Windows 9x machine, which did not have IPX/SPX installed, it would have hung. A work around is to force the server to start without the IPX/SPX port enabled (eg. dbsrv9 -x tcpip my.db). This is now fixed.



CR:318938
CR Number:   318938
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 1604 29 Jul 2003 Fixed
9.0.0 1196 29 Jul 2003 Fixed
8.0.3 4733 29 Jul 2003 Fixed
8.0.2 4294 29 Jul 2003 Fixed
Description
If an application using the OLEDB driver read a bitmap from a longbinary column and wrote it to a file, the application would likely have crashed. If the longbinary column had length N, then the driver copied N+1 bytes, changing a byte in memory that it did not own. This has been fixed.



CR:318939
CR Number:   318939
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.0 1056 09 May 2003 Fixed
Description
A connection using TLS encryption (ecc_tls or rsa_tls) would have been very slow on Windows 9x, or on NT/2000/XP, if the "dll=wsock32.dll" TCP parameter was used. The connection was so slow that it may appeared to have hung. This 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等等。
+-------------------------------------华丽的分割线-------------------------------------------------------------------------