提供7*24专业Sybase数据库远程及现场技术支持,Sybase ASE及Sybase SQL Anywhere数据库修复服务,
请联系电话: (微信),QQ: 289965371!
We supply technical support for Sybase ASE and Sybase SQL Anywhere, also have many years of experience in recovering data from damanged Sybase devices.
Please contact us:
Phone:
Wechat: 13811580958
QQ: 289965371 联系我们获取数据库技术支持!
Email: 289965371@qq.com
扫描下方微信,联系我们:
扫描雨翰数据恢复官方微信获取专业数据库恢复服务

 

随着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:380454
CR Number:   380454
Product Name:   UltraLite
Product Component:   UltraLite.NET
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3035 21 Feb 2005 Fixed
Description
Calling the method ULDatabaseSchema.ApplyFile() would not have ignored extra parameters in ULConnectionParms which it didn't need. This has been fixed.



CR:380469
CR Number:   380469
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)
10.0.0 1622 18 Feb 2005 Fixed
9.0.2 3042 18 Feb 2005 Fixed
Description
The server may have crashed while shutting down, if there was an outstanding xp_cmdshell() request still executing, and the server was forced to shutdown. This has been fixed.



CR:380491
CR Number:   380491
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1622 23 Feb 2005 Fixed
9.0.2 3087 23 Feb 2005 Fixed
9.0.1 1993 23 Feb 2005 Fixed
8.0.3 5220 23 Feb 2005 Fixed
Description
When adding days to a date using the Dateadd() function, it may have overflowed without an error, returning an incorrect date value.

For example:

select dateadd(day, 2250318 , '2005-02-16') would have returned 0000-01-00'



This has been fixed, an error message will now be returned.



CR:380502
CR Number:   380502
Product Name:   MobiLink
Product Component:   QAnywhere server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1616 21 Feb 2005 Fixed
9.0.2 3035 21 Feb 2005 Fixed
9.0.1 1991 21 Feb 2005 Fixed
Description
If the QAnywhere server contained several thousand undelivered messages (perhaps because the target clients had not recently synchronized) then the database server might appear to be using a large percentage of the CPU on its host machine. The typical solution was to add some indices on the QAnywhere system tables. Unfortunately, one of the queries being used by the QAnywhere server was not very efficient, and may have prevented the database server from using an index. The problem query has been fixed.



CR:380576
CR Number:   380576
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 95
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
21 Feb 2005 Not reproducible with latest version of the product available as of Resolution Date
Description
Production ASA 8.0.2, Build 4339. Database cannot be restarted anymore. Internal database error, assertion failure number 201819. Checkpoint invalid bitmap page.

Windows. XP SP1 Build 5.1.2600



CR:380632
CR Number:   380632
Product Name:   MobiLink
Product Component:   QAnywhere server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1617 21 Feb 2005 Fixed
9.0.2 3034 21 Feb 2005 Fixed
9.0.1 1992 21 Feb 2005 Fixed
Description
The JMS connector would crash when its connection to the consolidated database was broken. Now, whenever the consolidated database throws a SQLException, all of the connections in the connection pool are discarded. When the database is accessed again, new connections are opened which will autostart the database, instead of using old, invalid connection objects.



CR:380738
CR Number:   380738
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1601 21 Feb 2005 Fixed
9.0.2 3037 21 Feb 2005 Fixed
Description
The MobiLink Palm Listener now supports running on Treo 650 Smartphones. The implementation has also been added to the MobiLink Listener SDK.



CR:380744
CR Number:   380744
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)
10.0.0 1620 22 Feb 2005 Fixed
9.0.2 3086 22 Feb 2005 Fixed
Description
It was possible to get a "Database page size too big" error when autostarting a server, depending on timing, if the following events occurred:

- an autostarted database and server was stopped due to a disconnect, and the database had a page size of 2K or greater

- then a new connection was made immediately, that autostarted a server and the same database

- virus scanning software was being used

The server was ignoring errors when attempting to determine the page size of databases during a server autostart, and using a 1k page size if there were errors. Now the server correctly handles these errors and fails the server autostart.



This has been fixed so that the autostart either succeeds or returns the "Specified database file already in use" error.



CR:380746
CR Number:   380746
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1625 02 Mar 2005 Fixed
9.0.2 3091 02 Mar 2005 Fixed
8.0.3 5219 02 Mar 2005 Fixed
Description
Playback of a silent install recording may have failed if the recording included the ADO.NET feature, but the machine being installed to did not have the .NET Framework installed. This has been fixed.



CR:380750
CR Number:   380750
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1641 21 Mar 2005 Fixed
9.0.2 3100 21 Mar 2005 Fixed
9.0.1 2002 21 Mar 2005 Fixed
Description
MobiLink clients using HTTP and HTTPS can now set a liveness_timeout stream option, as follows:



liveness_timeout=N



where N is the number of seconds for the timeout. The default is to have no timeout (N=0). The synchronization will fail if the client waits N seconds without any data from MobiLink server. Users must be careful when setting this value. The value set should be short enough to timeout early enough for an impatient user, but set long enough for the longest delay between the MobiLink server receiving the upload and sending the download to the client. Note, if a synchronization is aborted due to a timeout, subsequent synchronizations should not be affected -- unless the MobiLink server is still processing the previous synchronization, in which case a "user already synchronizing" error will occur.



CR:380793
CR Number:   380793
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1621 22 Feb 2005 Fixed
9.0.2 3087 22 Feb 2005 Fixed
9.0.1 1993 22 Feb 2005 Fixed
8.0.3 5219 22 Feb 2005 Fixed
Description
The background color of explanatory text was being set incorrectly in wizards when Sybase CEntral was run on Linux. This has been fixed so that the wizard backgrounds are now transparent.



CR:380814
CR Number:   380814
Product Name:   UltraLite
Product Component:   UltraLite.NET
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1621 22 Feb 2005 Fixed
9.0.2 3087 22 Feb 2005 Fixed
Description
In locales where the decimal place separator is a comma, (ie French, Greek, etc.) the methods DataReader.GetDecimal() and ULTable.SetDecimal(), or a ULParameter with Decimal value, would have failed with the exception:

SQLE_CONVERSION_ERROR: Cannot convert System.Decimal to a Decimal



This has now been fixed.



CR:380970
CR Number:   380970
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)
10.0.0 1622 23 Feb 2005 Fixed
9.0.2 3087 23 Feb 2005 Fixed
9.0.1 1993 23 Feb 2005 Fixed
8.0.3 5220 23 Feb 2005 Fixed
Description
A CREATE PROCEDURE statement that did not qualify the procedure name with a userid, would have failed with the error "Item 'procedurename' already exists", even if the user did not own a procedure with the same name, but there existed a procedure with the same name in the user's namespace, (ie owned by a group the user was a member). This has been corrected.



CR:381001
CR Number:   381001
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 5223 28 Feb 2005 Fixed
Description
An ASA remote database which had been synchronized, and then forcefully shutdown, may not have recovered properly. Further synchronization attempts may fail with the error "Missing transaction log(s) ... ". This problem has now been fixed.
Workaround Description
 Issue a checkpoint before sync session.



CR:381011
CR Number:   381011
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   4.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1620 23 Feb 2005 Fixed
9.0.2 3142 23 Feb 2005 Fixed
Description
A selectivity estimates of 0% may have incorrectly been computed for non-equality predicates on small tables (e.g., 1 or 2 rows). This has been fixed.



CR:381111
CR Number:   381111
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3095 08 Mar 2005 Fixed
9.0.1 1998 08 Mar 2005 Fixed
8.0.3 5225 08 Mar 2005 Fixed
Description
When used with a case-sensitive database, the MobiLink client could have behaved incorrectly if MobiLink user and publication names were not specified in the same case as they were defined in the database. These identifiers might have been specified in any of the following places:

- the CREATE/ALTER SYNCHRONIZATION USER statement

- the CREATE/ALTER SYNCHRONIZATION SUBSCRIPTION statement

- the dbmlsync command line

- the CREATE/ALTER PUBLICATION statement



The incorrect behaviour could take one of the following forms:

- MobiLink client could have crashed

- synchronizations could have failed inappropriately

- if a MobiLink user was subscribed to more than one overlapping publication, operations that belonged to both publications might have been uploaded more than once, resulting in server side errors during synchronization.



MobiLink user and publication names are now treated case-insensitively



CR:381112
CR Number:   381112
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)
10.0.0 1623 24 Feb 2005 Fixed
9.0.2 3088 24 Feb 2005 Fixed
9.0.1 1994 24 Feb 2005 Fixed
8.0.3 5220 24 Feb 2005 Fixed
8.0.2 4521 24 Feb 2005 Fixed
Description
The Datadd() and Datediff() functions would sometimes have produced incorrect results when the time unit was Hours, Days, Weeks, Months or Years.



For example,

select dateadd(month, 119987, '0001/1/1'), dateadd(week,521722,'0001-01-01'), datediff(month,'0001-01-01','9999-12-31')



produced the result:

****-04-01 00:00:00.000 1833-11-10 19:44:00.000 -11085



This has been fixed. Now, the result will be:

9999-12-01 00:00:00.000 9999-12-27 00:00:00.000 119987



CR:381217
CR Number:   381217
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1624 01 Mar 2005 Fixed
9.0.2 3089 01 Mar 2005 Fixed
9.0.1 1995 01 Mar 2005 Fixed
8.0.3 5222 01 Mar 2005 Fixed
Description
If a BACKUP DATABASE statement specified a long directory name for the target directory and also included TRANSACTION LOG RENAME MATCH, the server could have subsequently crashed. This has been fixed. A workaround is to use a shorter directory name in the BACKUP statement.



CR:381257
CR Number:   381257
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 95
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
25 Feb 2005 DEFER
Description
Request to recover database



Production ASA 9.0.1, Build 1841 - Assertion 201425



CR:381258
CR Number:   381258
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 95
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
04 Mar 2005 DEFER
Description
ASA 9.0.2 #2542 - Calling a java function in a nested SP would show a drastic drop in perf after 14400 calls.



CR:381264
CR Number:   381264
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)
8.0.3 5226 08 Apr 2005 Fixed
Description
When running on NetWare in a low-memory situation, if the server was unloaded using the NetWare console, and there were active connections to the server, it was possible that the server would abend. This has been fixed.



CR:381286
CR Number:   381286
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)
10.0.0 1648 04 Apr 2005 Fixed
Description
If a stored procedure parameter was defined with a user-defined domain, and the domain was subsequently dropped, no error would have been given. Now, an error will be given, indicating that the domain is referenced by a procedure parameter.



CR:381327
CR Number:   381327
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3088 25 Feb 2005 Fixed
9.0.1 1994 25 Feb 2005 Fixed
8.0.3 5221 25 Feb 2005 Fixed
Description
Some utilities, (ie dbltm.exe, ssremote.exe, dbremote.exe and ssqueue.exe) would have crashed if they had been given a non-existent configuration file on their command lines. The utilities now return the usage screen.



CR:381331
CR Number:   381331
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1624 28 Feb 2005 Fixed
9.0.2 3045 28 Feb 2005 Fixed
9.0.1 1994 28 Feb 2005 Fixed
Description
The Listener utility may have crashed, if it was shutdown while it was attempting a long running tracking synchronization. Tracking synchronizations are small and typically complete or fail quickly. In some rare circumstances, synchronizing again with a known host, where no MobiLink server was running on the agreed port, seems to cause the delayed failure. A crash can also happen when a shutdown was requested during such a delay. This has been fixed.



CR:381438
CR Number:   381438
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)
10.0.0 1624 10 Mar 2005 Fixed
9.0.2 3089 10 Mar 2005 Fixed
8.0.3 5226 10 Mar 2005 Fixed
Description
It was possible for column statistics to become incorrect, which could have potentially resulted in poor access plans. The situaltion was rare, and was likely to have no other visible symptoms. This problem has been fixed.



CR:381465
CR Number:   381465
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3089 02 Mar 2005 Fixed
9.0.1 1996 02 Mar 2005 Fixed
Description
The SKIP n clause of the LOAD TABLE statement did not skip the initial n lines of the input file. The SKIP clause was effectively being ignored. This has been fixed so that the SKIP n clause does skip the first n lines in the input file.



CR:381486
CR Number:   381486
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)
10.0.0 1637 15 Mar 2005 Fixed
9.0.2 3098 15 Mar 2005 Fixed
8.0.3 5227 15 Mar 2005 Fixed
8.0.2 4523 15 Mar 2005 Fixed
Description
If a large number of statements was being used concurrently by applications connected to a database, a "SQL Statement error" could be issued. The maximum number of concurrent statements that can be handled by the server per database, was limited to 20 * (number of connections to the database) + 16384. This limit has now been changed to be approximately 20 * (number of connections to the database) + 65534. The exact number is dependent on the page size of the database cache.
Workaround Description
 None.



CR:381563
CR Number:   381563
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Windows CE 2.0
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3044 06 Apr 2005 Fixed
Description
There was a problem generating the cab file when deploying to a Windows CE device after installing the 9.0.2 build 3040 EBF. Deselecting the sample apps and database would have caused the cab file generation to fail with:



Error: Section [Shortcuts.All]shortcut "ADO.Net Sample.lnk" - there is no matching target file "ado_net_sample.exe" for the current CPU type.



This has now been fixed.
Workaround Description
 Include the sample applications in the cab file.



CR:381720
CR Number:   381720
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3092 03 Mar 2005 Fixed
Description
Connecting via a Connection profile would have failed unless the "Connect" dialog was first opened. This has been corrected.



CR:381724
CR Number:   381724
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)
10.0.0 1632 03 Mar 2005 Fixed
9.0.2 3095 03 Mar 2005 Fixed
9.0.1 1998 03 Mar 2005 Fixed
Description
If more than the maximum number of licensed HTTP connections are attempting to use the server, it will report '503 Service Temporarily Unavailable'. It was possible that the server could have reported this error, even when the client had not exceeded the maximum number of connections. This was more likely to occur when the clients repeatedly made connections to the server, and the server was heavily loaded. This has been fixed.



CR:381727
CR Number:   381727
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)
10.0.0 1626 04 Mar 2005 Fixed
9.0.2 3092 04 Mar 2005 Fixed
9.0.1 1996 04 Mar 2005 Fixed
Description
The server could have unexpectedly closed HTTP connections. This condition was more likely to occur as other active HTTP connections were terminating, or within a short period of time, (pprox. 5 to 10 seconds), of their terminating. This has been fixed.



CR:381729
CR Number:   381729
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1626 03 Mar 2005 Fixed
9.0.2 3044 03 Mar 2005 Fixed
9.0.1 1996 03 Mar 2005 Fixed
Description
In relatively rare circumstances, the QAnywhere .NET client could have thrown the following exception:



System.NullReferenceException: Object reference not set to an instance of an object.

at Microsoft.Win32.Win32Native.CopyMemoryAnsi(StringBuilder pdst, IntPtr psrc, IntPtr sizetcb)

at System.Runtime.InteropServices.Marshal.PtrToStringAnsi(IntPtr ptr)

at iAnywhere.QAnywhere.Client.QATextMessage.get_Text()



when reading the Text property of QATextMessage. This has been fixed.



CR:381736
CR Number:   381736
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)
10.0.0 1627 04 Mar 2005 Fixed
9.0.2 3093 04 Mar 2005 Fixed
9.0.1 1997 04 Mar 2005 Fixed
Description
Calling the system procedure sa_proc_debug_get_connection_name() could have caused a server crash if given a connection id for a connection that was attempting to access a database that was currently starting or shutting down. This has been fixed.



CR:381748
CR Number:   381748
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1626 03 Mar 2005 Fixed
9.0.2 3094 03 Mar 2005 Fixed
Description
If the server was started with the -fips flag, web procedures using HTTPS will use the regular (non-FIPS) RSA library, rather than the FIPS one. This has been fixed.



In addition, web procedures can be forced to use the FIPS library by specifying the URL as 'https_fips://...'. If the procedure is created using the https_fips protocol, and the database is subsequently run on a platform that doesn't support FIPS, the procedure will be executed as using standard (non-FIPS) HTTPS.



CR:381750
CR Number:   381750
Product Name:   MobiLink
Product Component:   QAnywhere server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1626 03 Mar 2005 Fixed
9.0.2 3092 03 Mar 2005 Fixed
9.0.1 1997 04 Mar 2005 Fixed
Description
It was possible, although likely rare, for the JMS connector to lose the content of a BytesMessage, when the connector failed to send the message, due to a JMS provider failure, immediately before or during the send operation. This has been fixed.



CR:381771
CR Number:   381771
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1652 05 Apr 2005 Fixed
9.0.2 3104 05 Apr 2005 Fixed
9.0.1 2006 05 Apr 2005 Fixed
8.0.3 5233 05 Apr 2005 Fixed
8.0.2 4525 05 Apr 2005 Fixed
Description
When performing a backup to a tape device on Windows systems, the server would have asked for a tape switch after 1.5 GB of data had been backed up, even if the tape capacity was larger. This problem has been fixed. The server will now use the entire capacity remaining on the tape.



As a workaround, the desired capacity can be specified using the "capacity=" option in the device string.



For example:



BACKUP DATABASE TO '\\.\tape0;capacity=20064829' ATTENDED ON etc.



The value specified is in K and is calculated by dividing 20,546,384,896 (which is the capacity in bytes reported by Windows for a 20 GB tape) by 1024.



CR:381848
CR Number:   381848
Product Name:   MobiLink
Product Component:   Streams
Status:   Closed
OS:   Generic
Original Version:   7.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1628 04 Mar 2005 Fixed
9.0.2 3094 04 Mar 2005 Fixed
9.0.1 1997 04 Mar 2005 Fixed
Description
For secure TLS synchronization, the MobiLink client would have gone through the list of trusted root certificates provided and failed with stream error code STREAM_ERROR_SECURE_CERTIFICATE_EXPIRED if any of the certificates had expired. This behaviour was incorrect. Now, the client will ignore expired root certificates when reading them, and will only report an error during the SSL/TLS handshake if no valid root certificates are found to match the server.



CR:381849
CR Number:   381849
Product Name:   MobiLink
Product Component:   Streams
Status:   Closed
OS:   Generic
Original Version:   7.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1628 04 Mar 2005 Fixed
9.0.2 3094 04 Mar 2005 Fixed
9.0.1 1997 04 Mar 2005 Fixed
Description
The MobiLink client would only have loaded the first certificate in the trusted root certificates file specified by the "trusted_certificates" synchronization parameter. This has been fixed.



Note, this problem did not exist for UltraLite.



CR:382018
CR Number:   382018
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1629 07 Mar 2005 Fixed
9.0.2 3094 07 Mar 2005 Fixed
Description
Starting the server with the -fips command line option (strong encryption done using FIPF approved algorithms), but without specifying the -ec option (encryption types), would have failed with the message "Simple encryption is not available in FIPS mode". This has been corrected by changing the default for the -ec option to "none"



CR:382022
CR Number:   382022
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1641 22 Mar 2005 Fixed
9.0.2 3100 22 Mar 2005 Fixed
9.0.1 2002 22 Mar 2005 Fixed
8.0.3 5229 22 Mar 2005 Fixed
8.0.2 4524 22 Mar 2005 Fixed
Description
A memory leak in the Java Heap would have caused poor performance for Java stored procedures, that used internal JDBC to access the database, if it was called repeatedly. When a procedure like this was called repeatedly without disconnection, the Java Heap would slowly grow until it reached its maximum, at which time the Java Garbage Collector would run every time a memory allocation request was made, causing poor performance. The memory leak has been fixed.



CR:382026
CR Number:   382026
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1634 09 Mar 2005 Fixed
9.0.2 3096 09 Mar 2005 Fixed
9.0.1 1999 09 Mar 2005 Fixed
Description
An ALTER PROCEDURE executed via EXECUTE IMMEDIATE within another procedure, would have failed to define the result set for the outer procedure correctly if the outer procedure returned a result set without specifying an explicit RESULT clause and it declared a variable by the same name as one declared in the inner procedure. The result of executing an ALTER PROCEDURE within anothert procedure would have been different than if the statement had been executed by itself. This has been fixed. A workaround is to use unique variable names in the procedure which executes the ALTER.



CR:382047
CR Number:   382047
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)
10.0.0 1628 07 Mar 2005 Fixed
9.0.2 3095 07 Mar 2005 Fixed
Description
It was possible, although rare, for TLS or HTTPS connections to have been dropped at any time because of decryption errors. For HTTPS connections, the client could also have seen the error "501 Method Not Implemented". This has been fixed.



CR:382072
CR Number:   382072
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1629 07 Mar 2005 Fixed
9.0.2 3094 07 Mar 2005 Fixed
Description
When the UltraLite Interactive SQL utility was displaying a result set in the Results tab, selecting (with the mouse) an element from the first column twice would have made that item editable. Attempting to change the value would then have failed (hitting ENTER would return the value to its original state). Then disconnecting (F12), while the item was in this edit mode, would have caused the UltraLite Interactive SQL utility to crash. This has been fixed by no longer allowing the result set to be editted (it must be done via a SQL statement), and the crash no longer occurs.



CR:382166
CR Number:   382166
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   7.0.4
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1632 08 Mar 2005 Fixed
9.0.2 3095 08 Mar 2005 Fixed
9.0.1 1998 08 Mar 2005 Fixed
8.0.3 5225 08 Mar 2005 Fixed
Description
When the MobiLink client extended option TableOrder was specified, the synchronization would have failed if the tables, or their owners, were specified in a different case from the one in which they were defined in the database. This problem occurred whether the database was case sensitive or not. The tables and owners specified by this option are now always treated as case insensitive.



CR:382167
CR Number:   382167
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   7.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1632 08 Mar 2005 Fixed
9.0.2 3095 08 Mar 2005 Fixed
9.0.1 1998 08 Mar 2005 Fixed
8.0.3 5225 08 Mar 2005 Fixed
Description
If event hooks were defined, the MobiLink client would not have recognized and executed them if their procedure name was not entered entirely in lower case. The case of the procedure name is now ignored.



Note, a similar problem with the Extraction utility and SQL Remote has also been fixed.



CR:382174
CR Number:   382174
Product Name:   MobiLink
Product Component:   Sample
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1632 07 Mar 2005 Fixed
9.0.2 3095 07 Mar 2005 Fixed
Description
The version information of the QAnywhere C++ TestMessage sample program was incorrect or missing. This has been fixed.



CR:382237
CR Number:   382237
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)
10.0.0 1632 08 Mar 2005 Fixed
9.0.2 3095 08 Mar 2005 Fixed
9.0.1 1998 08 Mar 2005 Fixed
Description
The sample program (samples\asa\externalprocedures\tests.sql), was using the get_piece() function for all chunks rather than just for the 2nd and subsequent chunks. If the code was modified such that the string in the 7th argument was prefixed with '=abcd'



set rslt = xp_all_types( null, 127, -12345, null,

'abcdefghijkl', 12.34e15, '=abcd'+repeat('=',300) );



then xp_all_types would have reported that all characters in the 7th argument match. This is not true since the are different. This has been fixed, the code in tests.sql has been corrected.



CR:382307
CR Number:   382307
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)
8.0.3 5230 22 Mar 2005 Fixed
8.0.2 4522 22 Mar 2005 Fixed
Description
When run on Sun Solaris systems, the server could, in rare circumstances, have crashed executing a CREATE DOMAIN statement. This has been fixed.
Workaround Description
 The customer found that if he doesnt use a domain at all, and rather duplicate the database and check constraint on the columns that he would have preferred use the domain, it seems to work. The other alternative is to split up the script so instead of one big dbisql session running newtest.txt script, run four dbisql sessions step1.txt, step2.txt, step3.txt and step4.txt.



The first method is preferable to breaking the script up, changing the install that calls it, and having to maintain it in parts. When we split the script in parts, each part in its own dbisql session, the scripts completed, but crashed shortly after when trying to use the database.



CR:382317
CR Number:   382317
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1637 15 Mar 2005 Fixed
9.0.2 3098 15 Mar 2005 Fixed
9.0.1 2000 15 Mar 2005 Fixed
Description
The UltraLite runtime could have caused a crash when a subquery contained outer references to more than one table



For example,

select * from T1, T2

where T1. x in ( select x from T3 where T1.z = T3.z and T2.y = T3.y )



This has been corrected.



CR:382345
CR Number:   382345
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)
10.0.0 1633 11 Mar 2005 Fixed
9.0.2 3096 11 Mar 2005 Fixed
9.0.1 1999 11 Mar 2005 Fixed
8.0.3 5226 11 Mar 2005 Fixed
8.0.2 4523 11 Mar 2005 Fixed
Description
Attempting to autostart a database with an invalid DatabaseSwitches connection parameter could have caused the server to hang. If the server was also being autostarted, the connection attempt could have hung. If the server was already running, the connection attempt would not hang, but the server may have hung when shutting down. These problems have now been fixed.



CR:382443
CR Number:   382443
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1634 11 Mar 2005 Fixed
9.0.2 3096 11 Mar 2005 Fixed
9.0.1 1999 11 Mar 2005 Fixed
Description
UltraLite applications could have produced incorrect results with a query that had both a left outer join and an order-by cluse which referenced columns only from tables on the left side of the left outer join.

For example:

select * from t1 left out join l2 on t1.a = t2.b order by t2.x



This has ben fixed.



CR:382499
CR Number:   382499
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3096 10 Mar 2005 Fixed
9.0.1 1999 10 Mar 2005 Fixed
Description
If the server attempted to use an SSL certificate that had expired, the non-intuitive error message "Error parsing certificate file, error code -6" would have been displayed. The message has been improved, it is now "Certificate '<filename>' has expired."



CR:382507
CR Number:   382507
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3096 11 Mar 2005 Fixed
9.0.1 1999 11 Mar 2005 Fixed
Description
When using TLS encryption, the client software would go through the list of trusted root certificates provided and would fail with a handshake error if any of the certificates had expired. This behaviour was incorrect. Now, clients will ignore expired root certificates when reading them, and will only report an error during the SSL/TLS handshake if no valid root certificates were found to match the server.



CR:382540
CR Number:   382540
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1646 30 Mar 2005 Fixed
9.0.2 3102 30 Mar 2005 Fixed
Description
If a SELECT was used to obtain the value of SQLCODE or SQLSTATE within a Transact-SQL procedure, and the procedure was called repeatedly, the plan for the query may have been cached. If this happened, the values returned for SQLCODE and SQLSTATE may be zero, even after an error had occurred. This has been fixed.



The value of @@error will correctly return an indication of whether or not an error occurred.



A workaround is to set the option Max_plans_cached to 0; however, this may impact performance. Another workaround is to obtain the value for one of @@error, SQLCODE or SQLSTATE using a SET (i.e. assignment) statement rather than by using a SELECT.



CR:382670
CR Number:   382670
Product Name:   UltraLite
Product Component:   UltraLite for AppForge MobileVB
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1635 11 Mar 2005 Fixed
9.0.2 3097 11 Mar 2005 Fixed
Description
When running an AppForge Crossfire application in hosted mode (ie, in the development environment) calling ULConnection.Close() might not actually close the connection. If an application called Close() and then tried to open the database again, it could cause SQL code -955 SQLE_CONNECTION_ALREADY_EXISTS.



One case that could lead to this was when ULColumn variables were assigned and the garbage collector had not disposed of them before the call to ULConnection.Close(). An internal reference from the column objects to the connection prevented the connection from closing. This will not happen when running on actual devices, as garbage collection in the AppForge client is more predictable on devices.



This has been fixed so that calling ULConnection.Close() will close the connection and subsequent calls on the ULColumn object will return SQLE_CURSOR_NOT_DELCARED.



CR:382677
CR Number:   382677
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)
10.0.0 1635 11 Mar 2005 Fixed
9.0.2 3096 11 Mar 2005 Fixed
Description
When run on SuSE 9.2, the main program windows for DBISQL and Sybase Central would open behind the console window used to start them. This has been fixed.



CR:382704
CR Number:   382704
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1635 14 Mar 2005 Fixed
9.0.2 3097 14 Mar 2005 Fixed
Description
The changes made for Engineering Case 377900, would have cause the MobiLink server to issue a warning that it was unable to fetch the download transaction time when running against an Oracle8i consolidated database. This has been fixed. The version of Oracle running the consolidated database is detected and appropriate statement is issued to fetch the transaction times.



CR:382839
CR Number:   382839
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1693 02 May 2005 Fixed
9.0.2 3122 02 May 2005 Fixed
9.0.1 2023 02 May 2005 Fixed
8.0.3 5249 02 May 2005 Fixed
8.0.2 4531 06 May 2005 Fixed
Description
When using the Microsoft SQL Server "Import and Export Data" tool to move tables from a Microsoft SQL Server database to an ASA database, and the connection to the ASA server used the OLEDB provider, column data was truncated to 200 bytes. This has now been fixed.



CR:382935
CR Number:   382935
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3095 14 Mar 2005 Fixed
Description
CREATE LOCAL TEMPORARY TABLE can now be used to define a local temporary table which will persist until the end of a connection, or until the table is explicitly dropped. While DECLARE LOCAL TEMPORARY TABLE can be used to do the same thing outside a procedure, there was previously no mechanism for doing this within a procedure. In other words, if CREATE LOCAL TEMPORARY TABLE is executed within a procedure, the table will continue to exist after the procedure completes. Similarly, if this statement is executed within an IF statement, the table will exist after the IF completes.



CR:382951
CR Number:   382951
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)
10.0.0 1637 15 Mar 2005 Fixed
9.0.2 3098 15 Mar 2005 Fixed
Description
When the server was reading a significant number of pages into cache, or writing dirty pages from the cache, there could have been slightly poorer performance than expected, especially on a multiprocessor machine. This has been fixed by removing contention and slightly reducing CPU usage in this case.



CR:383145
CR Number:   383145
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)
10.0.0 1665 11 Apr 2005 Fixed
9.0.2 3110 11 Apr 2005 Fixed
9.0.1 2112 11 Apr 2005 Fixed
8.0.3 5239 11 Apr 2005 Fixed
Description
After deleting rows from the end of a large trie-based index, attempting to insert or search for a value larger than any indexed value could have resulted in fatal I/O errors (such as reading past the end of the file), or assertions such as 102300, or 201601. For this to have occurred, the index had to contain at least 3 levels (more than 50,000 rows with a 2k page size), the value being deleted had to be the last value in the index, and the leaf page containing the entry, (as well as the leaf's parent), must have contained only a single entry. Rebuilding (or reorganizing) the index would have fixed the problem.

Note, dbvalid would not have couaght this problem



CR:383170
CR Number:   383170
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3140 21 Jun 2005 Fixed
9.0.1 2046 12 Jul 2005 Fixed
Description
If an installation had been updated using the Maintenance Patch, or an EBF, in a language other than that used during the original installation, the uninstall would fail. The Patch or EBF would have overwritten the suport files, which contained support for the original language, but would not have changed the language option in the uninstall command line. This would have resulted in the uninstall attempting to run in the original language and failing to find the correct language support. This has now been fixed by changing the uninstall command line to reflect the language of the last-run Patch or EBF.



CR:383178
CR Number:   383178
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1639 17 Mar 2005 Fixed
9.0.2 3099 17 Mar 2005 Fixed
9.0.1 2001 17 Mar 2005 Fixed
Description
The server disables floating point exceptions by default. If an external function DLL written in Delphi was used, floating point exceptions could have been enabled. This could have lead to a subsequent server crash due to a floating point exception. This has been fixed.



CR:383345
CR Number:   383345
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 04 Apr 2005 DEFER
9.0.2 3102 04 Apr 2005 Fixed
9.0.1 2004 04 Apr 2005 Fixed
Description
An incorrect result may been returned for queries with EXISTS subqueries with correlated HAVING clauses. For this problem to have occurred, the following conditions must be met:

1. There must have been at least one correlated equality predicate in the WHERE clause of an EXISTS subquery.

2. There must have been at least one correlated predicate in the HAVING clause of the subquery which referenced an aggregate function.

3. The EXISTS subquery was used in the WHERE clause of the main query block.



This has been fixed.



Example:

select A.C from A

where exists (

select 1

from A H

where H.b=A.b

group by H.b

having MAX(H.c)=A.c )



CR:383414
CR Number:   383414
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.2 3099 17 Mar 2005 Fixed
9.0.1 2001 17 Mar 2005 Fixed
Description
If an older database was upgraded, the system table SYSSQLSERVERTYPE was not being repopulated with new values. This table is now rebuilt during an upgrade.



CR:383489
CR Number:   383489
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1640 17 Mar 2005 Fixed
9.0.2 3099 17 Mar 2005 Fixed
Description
On NVFS devices with an internal file volume, the UltraLite Palm utility now provides access to UltraLite databases which are stored on an internal drive. This is an addition to the current access to UltraLite data stores on both the external slot and in-memory.



CR:383497
CR Number:   383497
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)
10.0.0 1640 17 Mar 2005 Fixed
9.0.2 3100 17 Mar 2005 Fixed
9.0.1 2002 17 Mar 2005 Fixed
Description
The ResultSet classes's GetState() method could return the incorrect state when the query contains a LEFT OUTER JOIN. Specifically, if the last row in the result set supplied NULL values for the right hand expressions, calling GetState() after fetching all rows would return UL_RS_STATE_ON_ROW instead of UL_RS_STATE_AFTER_LAST or UL_RS_STATE_BEFORE_FIRST.



Some applications might use GetState to determine whether a result set has been completely fetched (for example, the UltraLite Interactive SQL utility does this). These applications would not have behaved properly when executing a query like the one described

above.



This has been fixed.



CR:383786
CR Number:   383786
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)
10.0.0 1641 21 Mar 2005 Fixed
9.0.2 3100 21 Mar 2005 Fixed
9.0.1 2003 22 Mar 2005 Fixed
Description
A remote database connection back to the same ASA server, using the shared memory link, would have hung on Solaris. A workaround is to use TCP/IP. This has been fixed.



CR:383942
CR Number:   383942
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3102 30 Mar 2005 Fixed
9.0.1 2004 30 Mar 2005 Fixed
Description
When using the Lithunian language resource library, the server usage failed to show the command line options -cc, -cr, and -cv. This has been fixed.



CR:383970
CR Number:   383970
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)
10.0.0 1663 22 Mar 2005 Fixed
9.0.2 3109 22 Mar 2005 Fixed
9.0.1 2011 22 Mar 2005 Fixed
Description
The database server would have erroneously reported a licensing violation on hyperthreaded or multicore CPUs. A message such as the following would have been displayed:



"Warning: The server is limited to use xxx processor(s), but it is executing on yyy processor(s)."



The server was using the number of CPUs reported by the operating system, and was not accounting for the fact that they may be hyperthreads (or, soon, just one of multiple cores in a single physical processor). Also, the server would only create enough threads of execution to match the CPU license limit; however, on a hyperthreaded or multicore processor, the server should create enough threads of execution to run on all hyperthreads and cores on all of the physical processors for which the server is licensed.



The problem has been corrected as follows:

1. The server adjusts its affinity mask to restrict the server to run on only the licensed number of physical processors

2. The server creates enough OS threads to be able to execute on all cores & hyperthreads of all processors for which the server is licensed.



To address #2 above, the default number of OS threads (changeable with the '-gx' switch) is now 1 plus the number of hyperthreads and cores on all licensed processors. The previous default number of OS threads was the minimun of the licensed number of cpus, or 1 plus the number CPUs as reported by the OS.



The server now also correctly adjusts its affinity mask to restrict the server to the licensed number of physical processors. If the server is licensed for 'n' processors, the server will by default run on all hyperthreads and cores of 'n' physical processors.



A new server command line option has been added ('-gtc') to control the aximum "processor concurrency" that the server will allow. For example, by default on a single-processor hyperthreaded system, or on any hyperthreaded system with a server licensed for just 1 CPU, the server will by default allow two threads to run concurrently on one physical processor. Adding a '-gtc 1' switch, for example, allows the user to force the engine to run on just one core of one processor.



The following will help to clarify the interaction of the switches that control licensing and concurrency. The following symbols will be used so that the values can be easily related to the server options that control them:



gt : the number of physical processors to use

gtc : the maximum processor-level concurrency

gn : the number of concurrent server requests

gx : the number OS threads to create



The default value for gt is the minimum of the number of physical processors licensed and the number of physical processors in the machine. The user cannot set gt to exceed the default value.



The default value for gtc is the minimum of the total number of cores and hyperthreads on the licensed number of physical processors and the total number of cores and hyperthreads in the physical machine. The user cannot set gtc to exceed the default value.



The default value for gn is 20 for the network server. For the personal server on platforms which support Java in the database, gn defaults to 2 times the connection limit (which is also 20 because the connection limit is 10) and the user cannot specify a gn value less than 2 times the connection limit or greater than 3 times the connection limit. For the personal server on platforms that does not support Java in the database, gn defaults to connection limit and the user cannot specify a gn value larger then connection limit.



Once the server has chosen the gt, gtc, and gn values based on command line values, license restrictions, physical processors in the machine, and the connection limit, the server will choose a gx value. The default value for gx is the minimum of gtc plus 1 and gn. The user cannot specify a gx value where gx > gn.



An example will also help to demonstrate how the server selects CPUs based on gt and gtc. For the purposes of the examples below, assume we have a 4-processor system with 2 cores on each processor. We label physical processors with letters and the cores with numbers. This 4-processor system therefore has processing units A0, A1, B0, B1, C0, C1, D0 and D1



Case 1: A 1-CPU license or "-gt 1" specified on the command line

The network server will use gt=1, gtc=2, gn=20, gx=21

Threads will be allowed to execute on A0 and A1



Case 2: An unlimited server with "-gtc 5" on the command line

The network server will use gt=4, gtc=5, gn=20, gx=21

Threads will be allowed to execute on A0, A1, B0, C0, and D0



Case 3: A server with a 3-CPU license and "-gtc 5" on the command line

The network server will use gt=3, gtc=5, gn=20, gx=21

Threads will be allowed to execute on A0, A1, B0, B1, and C0



CR:383977
CR Number:   383977
Product Name:   MobiLink
Product Component:   Streams
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1645 22 Mar 2005 Fixed
9.0.2 3102 22 Mar 2005 Fixed
Description
The network protocol option network_leave_open is now supported on Palm devices. Using the new option, a MobiLink client running on Palm can optionally specify that the network connectivity should be left open after the synchronization finishes.



The option syntax is as follows:



network_leave_open = { 0 | 1 }



On the Palm platform, the default is 1 where the network connectivity is left open after the synchronization finishes.



CR:384070
CR Number:   384070
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1661 08 Apr 2005 Fixed
9.0.2 3108 08 Apr 2005 Fixed
9.0.1 2010 08 Apr 2005 Fixed
Description
The INPUT statement was ignoring the setting of the "Default_isql_encoding" option. This has now been fixed.



CR:384130
CR Number:   384130
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Solaris
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3141 23 Jun 2005 Fixed
9.0.1 2038 23 Jun 2005 Fixed
8.0.3 5269 23 Jun 2005 Fixed
Description
If the length of an indexed table column was increased on a big endian machine, using the index may have caused the server to crash due to an unaligned memory reference. This has been fixed.
Workaround Description
 I have changed the column size by doing the following.

1)drop index MO_META_U2

2)alter table mo_meta modify uniquename varchra(255)

3)create index MO_META_U2 on MO_META(UNIQUENAME);



CR:384141
CR Number:   384141
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
8.0.3 5230 29 Mar 2005 Fixed
9.0.1 2004 29 Mar 2005 Fixed
9.0.2 3102 29 Mar 2005 Fixed
Description
When using the Database Tools interface to run the MobiLink synchronization client, if the a_sync_db version field was set to a value that was 8000 or greater, and less than the version supported by the dbtools library, then the upload_defs field would have been ignored. If the database had more than one subscription, then this would have caused the synchronization to report the following error message:



Multiple synchronization subscriptions found in the database. Please specify a publication and/or MobiLink user on the command line.



This behaviour could also be seen if the MobiLink client was used with a later version of the dbtools library. This has been corrected.



CR:384238
CR Number:   384238
Product Name:   SQL Anywhere
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3102 29 Mar 2005 Fixed
Description
The Ping utility would have displayed a message if the server could not be found, even if the -q option ("quiet: do not print messages") had been used. This has been fixed, no message will now be displayed if the -q option is used.



CR:384281
CR Number:   384281
Product Name:   UltraLite
Product Component:   UltraLite.NET
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3103 05 Apr 2005 Fixed
9.0.1 2005 05 Apr 2005 Fixed
Description
UltraLite could have incorrectly generated null results for expressions referencing NOT NULL columns in tables to the right of a LEFT OUTER JOIN. This would have happened for result set rows fetched after NULLs had been supplied for the right hand side. This has been fixed.



CR:384294
CR Number:   384294
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1685 29 Apr 2005 Fixed
9.0.2 3119 29 Apr 2005 Fixed
9.0.1 2173 08 Aug 2006 Fixed
Description
Interactive SQL could have reported an OutOfMemory error during, or shortly after, executing a statement which returned a large result set. This was most likely to occur when the "Show multiple result sets" option was turned on, and the "Maximum number of rows to display" option was set to "All rows". This has been fixed so that now when Interactive SQL detects that it is running out of memory, it will show only as many rows as it can, and will display a warning that the result set is incomplete. As a side-effect of this change, Interactive SQL's performance has been improved when executing sequences of statements for which result sets are returned, but never displayed. For example, the following sequence will execute considerably faster, especially if all of the conditions listed above are met:



SELECT * FROM T1;

OUTPUT TO t1.txt;

SELECT * FROM T2;

OUTPUT TO t2.txt;



CR:384317
CR Number:   384317
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 2005 29 Mar 2005 Fixed
9.0.2 3103 29 Mar 2005 Fixed
Description
UltraLite could have generated incorrect results for queries that required a temporary table, when DISTINCT and ORDER BY clauses were both present. For example :

SELECT DISTINCT quantity, quantity + 1 FROM table ORDER BY quantity

where there was no index starting with the column named quantity. This has been fixed.



CR:384742
CR Number:   384742
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Solaris
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 2005 28 Mar 2005 Fixed
9.0.2 3044 28 Mar 2005 Fixed
10.0.0 1648 28 Mar 2005 Fixed
Description
The global variable @@procid would have always returned zero on big-endian platforms, (ie Sun Solaris). This has been fixed.



CR:384758
CR Number:   384758
Product Name:   MobiLink
Product Component:   QAnywhere server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3104 01 Apr 2005 Fixed
Description
A QAnywhere client could have continuously failed to synchronize messages with a QAnywhere server when using a Microsoft SQL Server consolidated database. This would have occurred if during the last message synchronization the server committed the messages from the client, but the connection with the client dropped before the client could receive the acknowledgement, and a new client used the same message store id as a previous client message id that was abandoned. The problem was with the QAnywhere system procedure for handling primary key conflicts, ml_qa_handle_error. This has been fixed for any new QAnywhere servers with a Microsoft SQL Server back-end. For existing QAnywhere servers with a Microsoft SQL Server back-end, the QAnywhere server schema can be patched by dropping and re-creating the procedure from the fixed syncmss.sql script.



CR:384773
CR Number:   384773
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1652 04 Apr 2005 Fixed
9.0.2 3104 04 Apr 2005 Fixed
Description
The Import Wizard would have failed with an internal error (NullPointerException) in the following situation:



1. the import file format was set to "fixed",

2. the wizard was told to import the data into an existing table,

3. "Next" was clicked until the end of the wizard was reached,

4. then "Back" was clicked until the first page in the wizard was reached,

5. the import file format was then changed to a delimited file

6. "Next" was again clicked until the end of the wizard was reached.



This has been fixed.



CR:384795
CR Number:   384795
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)
10.0.0 1652 05 Apr 2005 Fixed
9.0.2 3104 05 Apr 2005 Fixed
9.0.1 2006 05 Apr 2005 Fixed
Description
Attempting to create a procedure or an event containing a LOAD TABLE statement, which used a variable name to represent the filename, would have resulted in a syntax error. This has been fixed.



CR:384959
CR Number:   384959
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1666 06 Apr 2005 Fixed
9.0.2 3115 06 Apr 2005 Fixed
9.0.1 2010 06 Apr 2005 Fixed
8.0.3 5267 17 Jun 2005 Fixed
Description
Changes made for Engineering Case #363767 could have caused the database file to grow unnecessarily. A page that was in use as of the last checkpoint is allowed to be reused before the next checkpoint, provided its preimage has been saved in the checkpoint log. Prior to the changes for case 363767, the preimage for a freed page was forced to disk and the page was allowed to be reused immediately. After the changes for case 363767, the freed page was not allowed to be reused until after the next checkpoint, because the server no longer forced the preimage to disk for performance reasons. If an application freed and reused pages frequently (for example, repeatedly deleting all rows from a table then inserting rows back into the table), the server would not have allowed many of the free pages to be used until after the next checkpoint. The problem has been fixed by keeping track of the set of free pages that would normally be allowed to be reused if only the preimages were committed to disk.



Note that this growth was not unbounded and was not a 'leak', as the pages are freed as of the next checkpoint. This problem only affected databases created with 8.0.0 or later.



CR:385158
CR Number:   385158
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   6.0.03
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1654 31 Mar 2005 Fixed
9.0.2 3105 31 Mar 2005 Fixed
9.0.1 2007 31 Mar 2005 Fixed
8.0.3 5234 31 Mar 2005 Fixed
Description
When the schema of a database object was modified by a DDL statement, any existing views that refered to the modified object could potentially have become invalid. However, the server did not detect any problems until the view was subsequently referenced. In order to avoid such problems from happening, it was necessary to recompile the affected views via the "ALTER VIEW ... RECOMPILE" statement. If such recompilation was not done after dropping a column that is referenced by a view for example, then the server could have crashed in certain situations when the affected view was referenced. This has been fixed, the server will now generate an error without crashing.



The server will now generate an error without crashing.



CR:385171
CR Number:   385171
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   7.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1654 05 Apr 2005 Fixed
9.0.2 3105 05 Apr 2005 Fixed
9.0.1 2007 05 Apr 2005 Fixed
8.0.3 5234 05 Apr 2005 Fixed
Description
If an sp_hook_dbmlsync_logscan_begin hook was defined that modified a table being synchronized, and the extended option Locktables was set to 'off', then actions performed by the hook would not have been uploaded during the current synchronization. Actions would have been uploaded correctly though during the next synchronization. This has been changed so that any changes made to synchronization tables by the sp_hook_dbmlsync_logscan_begin hook will now be uploaded during the current synchronization regardless of the setting of the Locktables option.



CR:385174
CR Number:   385174
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.1 2007 30 Mar 2005 Fixed
9.0.2 3105 30 Mar 2005 Fixed
10.0.0 1654 31 Mar 2005 Fixed
Description
The DBMLSync Integration Component would previously have created and written debug information to a file named dbmlsyncActiveX.log. This file will no longer be created in released versions of the DBMLSync Integration Component.



CR:385179
CR Number:   385179
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3107 06 Apr 2005 Fixed
9.0.1 2009 06 Apr 2005 Fixed
8.0.3 5236 06 Apr 2005 Fixed
Description
The MobiLink client may not have detected that a table had been altered, and would have sent an invalid upload stream to the consolidated database. The following operations in a log file demonstrate the problem, when the client scanned the log during a single synchronization :

1) Data on table t1 is changed.

2) Table t1 is removed from the only publication it belongs to.

3) Data on table t1 is changed again.

4) Table t1 is altered.

5) Table t1 is added back to the publication it was removed from.



Now, the MobiLink client will report the error "Table 't1' has been altered outside of synchronization at log offset X" when this situation arises.



CR:385315
CR Number:   385315
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1656 08 Apr 2005 Fixed
9.0.2 3106 08 Apr 2005 Fixed
9.0.1 2008 08 Apr 2005 Fixed
Description
The order of columns in an index as returned by the view SYS.SYSINDEXES, in the column colnames, mayt be incorrect. This has been fixed by adding an ORDER BY clause in the list() expression used to generate the column list.



CR:385324
CR Number:   385324
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3298 23 Nov 2006 Fixed
9.0.2 3412 23 Nov 2006 Fixed
Description
Attempting to execute a query with an ORDER BY clause that contained a subquery, would have failed with the error -152: 'Invalid ORDER BY specification'.

For example:

select dept_id from department as D

group by dept_id

order by (select count(*) from employee as E where D.dept_id = E.dept_id)



This has been corrected so that subqueries are now allowed in the ORDER BY clause, given that all outer references in the subquery are valid.



CR:385349
CR Number:   385349
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1660 07 Apr 2005 Fixed
9.0.2 3108 07 Apr 2005 Fixed
9.0.1 2010 07 Apr 2005 Fixed
8.0.3 5236 07 Apr 2005 Fixed
Description
When inserting Multi-byte Character Set strings, by passing them as parameters to the AsaCommand method, the strings were not saved. This has ben fixed.



CR:385383
CR Number:   385383
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   4.3.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1719 07 Jun 2005 Fixed
9.0.2 3131 07 Jun 2005 Fixed
Description
The installer would have occasionally failed to determine the location of the Shared folder. For example, if only Sybase Central had been installed, the existing Shared folder would not have been found and the default location would be used instead. If the default was chosen, plugins installed by other products would have failed to load. This has been fixed.



CR:385486
CR Number:   385486
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1659 12 Apr 2005 Fixed
9.0.2 3107 12 Apr 2005 Fixed
Description
Attempting to create a proxy table to an existing table in another ASA database, that had a defined with a UNIQUEIDENTIFIER datatype, would have failed with the error "data type not supported". This problem has been fixed.



CR:385494
CR Number:   385494
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1656 06 Apr 2005 Fixed
9.0.2 3106 06 Apr 2005 Fixed
9.0.1 2008 06 Apr 2005 Fixed
8.0.3 5235 06 Apr 2005 Fixed
Description
The IsNumeric() function would have returned an error when the parameter was too long. It now returns FALSE, since the parameter can't be numeric.



CR:385530
CR Number:   385530
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1656 08 Apr 2005 Fixed
9.0.2 3106 08 Apr 2005 Fixed
9.0.1 2008 08 Apr 2005 Fixed
8.0.3 5235 08 Apr 2005 Fixed
Description
If an ALTER VIEW statement was executed by the creater of the view, but that user no longer has RESOURCE authority, a "permission denied" error would have been reported. The view definition in SYSTABLE.view_def would still have been updated, but the preserved source for the view in SYSTABLE.source would not have been updated. This has been fixed, now no error will be reported in this situation, and the preserved source will be updated.



CR:385641
CR Number:   385641
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1667 12 Apr 2005 Fixed
9.0.2 3111 12 Apr 2005 Fixed
9.0.1 2013 12 Apr 2005 Fixed
Description
If a trigger or procedure executed a conditional statement (e.g. an IF statement) that used a subselect on a procedure, and the procedure call in the subselect took at least one parameter, a server crash would have resulted. This has been fixed.



CR:385645
CR Number:   385645
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)
10.0.0 1648 04 Apr 2005 Fixed
9.0.2 3103 04 Apr 2005 Fixed
9.0.1 2005 04 Apr 2005 Fixed
Description
When the server was run on big endian platforms, (such as Sun Solaris), the global variable @@procid would always have returned zero. This has been fixed.



CR:385653
CR Number:   385653
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1654 12 Apr 2005 Fixed
Description
When SQL dialect related functions such as WATCOMSQL(), TRANSACTSQL() or SQLDIALECT() were called with a invalid statement, the server would have returned the error "Error at character n", where n was actually in bytes in database's character set. This number could have been misleading when the statement contained non-ASCII characters. This problem has been fixed, the error is now based on the character offset, instead of the byte offset.



CR:385659
CR Number:   385659
Product Name:   SQL Anywhere
Product Component:   JDBC Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1699 08 Apr 2005 Fixed
9.0.2 3125 08 Apr 2005 Fixed
Description
If an application relied on the Java VM's garbage collector to close Statement, PreparedStatement or CallableStatement objects, rather than explicitly closing these objects, the server could have eventually failed with a "resource governor exceeded" error. The garbage collector was being prevented from closing these objects. This problem has been fixed and these objects now properly get garbage collected.



CR:386004
CR Number:   386004
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1655 06 Apr 2005 Fixed
9.0.2 3106 06 Apr 2005 Fixed
Description
The method QAManagerBase::getLastError() could have return an error code indicating an error, even after the method call was successful. This would happen after a previous method call that failed. This has now been fixed, getLastError() returns an error indication, if and only if the prior method call failed.



CR:386022
CR Number:   386022
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 1655 08 Apr 2005 Fixed
9.0.2 3106 08 Apr 2005 Fixed
Description
Calls to the method QABinaryMessage.ReadString() would have returned an empty string when used to read a string of longer than 255 characters, if the string was originally written with WriteString(). This has been fixed, now string data types of length up to 32767 characters can be written and read from a QABinaryMessage, as documented.





--------------------------------------华丽的分割线-------------------------------------------------------------------------

Sybase SQL Anywhere数据库恢复工具ReadASADB:

之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具: ReadASADB。
此工具支持ASA v5.0, v6.0, v7.0, v8.0, v9.0, v10.0, v11.0, v12.0, v16.0, v17.0等版本。
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具。
恢复Sybase SQL Anywhere的工具在国内处于领先水平。

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,16.x,17.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使用介绍

Sybase SQL Anywhere数据库恢复工具ReadASADB适用场景

各种误操作:

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

Sybase SQL Anywhere数据库恢复工具ReadASADB的应用场景:

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
7、*** ERROR *** Assertion failed: 201417 (7.0.4.3541) Invalid count or free space offset detected on a table page
8、Internal database error *** ERROR *** Assertion failed: 201425 (8.0.3.5594) Invalid count or free space offset detected on a free list page -- transaction rolled back.
9、Internal database error *** ERROR *** Assertion failed: 100702 (8.0.1.2600) Unable to modify indexes for a row referenced in rollback log -- transaction rolled back


-------------------------------------------------------------------------------------------

Sybase ASE数据库恢复工具READSYBDEVICE:

一个不依赖数据库管理系统、直接从Sybase数据库设备文件上提取数据的业内领先的恢复工具!
能够从损坏的Sybase ASE设备文件(.dat)上提取数据的非常规恢复工具。

Sybase ASE数据库恢复工具READSYBDEVICE的主要功能:

  1. 被勒索病毒加密数据文件及备份文件情况下的恢复;
  2. 系统崩溃只剩下数据文件的情况下的恢复,甚至数据库文件不存在而只有损坏的备份文件情况下的恢复;
  3. 因断电、硬盘坏道等造成数据库文件损坏情况下的恢复;
  4. delete数据恢复、误update数据恢复、误删除表(drop)恢复、误truncate表恢复 等;
  5. 各种Sybase内部系统表损坏、索引错误的修复;
  6. master数据库损坏而无法正常运行情况下的恢复;
  7. Sybase数据库被标记为可疑,不可用等情况的恢复;
  8. Sybase数据库中数据文件内部出现坏块情况下的恢复;
  9. Sybase数据库无数据文件但有日志文件的情况下的恢复;
  10. Sybase数据库只有数据文件无任何日志文件的情况下的恢复;
  11. Sybase数据文件被误删除情况下的碎片提取恢复;
  12. 磁盘阵列上的Sybase数据库被误格式化情况下的数据库恢复;
  13. 数据库sysobjects等系统表损坏无法正常应用情况下的恢复;
  14. Sybase数据库还原数据库出现失败情况下的恢复;
  15. Sybase数据库只剩下损坏的备份文件情况下的恢复。

Sybase ASE数据库恢复工具READSYBDEVICE支持的版本:

Sybase ASE 11.0.x,11.5.x,11.9.x,12.0.x,12.5.x,15.0.x,15.5.x,15.7.x,16.0.x


-------------------------------------------------------------------------------------------

SQL Server数据库恢复工具SQLRescue:

一个不依赖数据库管理系统、直接从SQL Server数据库文件上提取数据的业内领先的恢复工具!
能够从损坏的SQL Server数据库文件(.mdf)上提取数据的非常规恢复工具。

SQL Server数据库恢复工具SQLRescue的主要功能:

  1. 系统崩溃只剩下数据文件的情况下的恢复,即无日志文件或者日志文件损坏情况下的恢复;
  2. 断电导致数据库文件损坏情况下的恢复;
  3. 硬盘坏道造成数据库损坏情况下的恢复;
  4. 数据文件内部存在坏页情况下的恢复;
  5. 企业管理器误删除数据表记录,管理软件误删除数据表记录的恢复;
  6. 并闩锁错误、格式化、误删除后导致软件不能使用的情况;
  7. 无法读取并闩锁页sysindexes失败情况下的修复;
  8. 数据文件被误删除情况下的碎片提取恢复;
  9. 系统表损坏、索引错误、误删除数据库表、删除记录的数据找回;
  10. master数据库损坏而无法正常运行情况下的恢复;
  11. 数据文件无法附加情况下的数据恢复;
  12. 数据库被标记为可疑,质疑,不可用等情况的恢复;
  13. 数据库sysobjects等系统表损坏情况下的恢复;
  14. 数据被误(drop、delete、truncate)删除表数据的恢复,误update后的数据恢复等;
  15. 还原时报一致性错误,错误823等情况下的数据恢复,各种错误提示的数据库文件修复;
  16. 数据库被误格式化等情况下的数据库恢复;
  17. 日志收缩造成数据库损坏情况下的恢复;
  18. 仅剩损坏的备份文件情况下的恢复。

SQL Server数据库恢复工具SQLRescue技术特点:

只要SQL Server数据库的数据文件存在,我们就有办法帮您从数据文件中找回重要数据。
  1. 从数据文件中直接恢复数据
  2. 不能附加时直接恢复数据并生成新的数据库
  3. 系统表损坏的数据库修复
  4. 快速修复SQL 823错误、连接中断错误

SQL Server数据库恢复工具SQLRescue支持的版本:

Microsoft SQL Server 7.0, 2000, 2005, 2008, 2008R2, 2012, 2014, 2016, 2017,2019。
+-------------------------------------华丽的分割线-------------------------------------------------------------------------