远程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:442594
CR Number:   442594
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   7.0.00
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2961 25 Sep 2006 Fixed
10.0.0 2705 25 Sep 2006 Fixed
9.0.2 3378 25 Sep 2006 Fixed
Description
If a return variable name that contained spaces was specified in the Create Function wizard, then Sybase Central could not have created the function. The return variable name was not being quoted in the generated source. Now it is if the dialect chosen is Watcom-SQL. If the dialect chosen is Transact-SQL, then spaces are replaced with underscores, as Transact-SQL does not support spaces in variable names.



CR:442613
CR Number:   442613
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2961 25 Sep 2006 Fixed
10.0.0 2706 25 Sep 2006 Fixed
Description
The SQLCONNECT and ULSQLCONNECT environmental variables can supply parameters for the -a and -c command line options, SQL ANYWHERE and UltraLite database connection strings respectively. When a parameter was supplied in both the environment variable and in the option, the parameter from the environmental variable was the one chosen. For compatibility with other utilities, this has been changeded so that those supplied on the command line are preferred.



CR:442641
CR Number:   442641
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)
9.0.2 3385 06 Oct 2006 Fixed
Description
If an UNLOAD statement includes ESCAPES OFF and QUOTES OFF and attempts to unload a long string, the server could crash or generate garbage characters in the output file. This has been fixed.



CR:442667
CR Number:   442667
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2962 26 Sep 2006 Fixed
10.0.0 2706 26 Sep 2006 Fixed
Description
The SQL Anywhere Explorer was not installed on Windows x64 machines. This has been corrected.



CR:442674
CR Number:   442674
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.1 3265 03 Oct 2006 Fixed
10.0.0 2716 03 Oct 2006 Fixed
Description
If the input string and encryption key supplied to the encrypt built-in function were identical, the output data (the ciphertext) would always have been the same (i.e. the function was deterministic). This has been changed so that there is now a public-only option called encrypt_aes_random_iv that controls this behaviour. If this option is set to ON, a random initialization vector will be used, ensuring that encrypting the same string with the same key will result in different ciphertext. If this option is set to OFF, the existing behaviour is used. The default value of this option is OFF, i.e. things

will continue to work as they do now. To get the new behaviour, set the value of this option to ON.



In versions of 10.x starting from 10.0.1, the default for this option will be ON. In the next major version, this option will be removed, and the new behaviour will always be used.



CR:442676
CR Number:   442676
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2961 26 Sep 2006 Fixed
10.0.0 2468 26 Sep 2006 Fixed
9.0.2 3139 26 Sep 2006 Fixed
Description
Processing large and complex queries may have caused the stack to overflow, resulting in the server crashing. This has been fixed.



CR:442684
CR Number:   442684
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   8.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
9.0.2 3378 26 Sep 2006 Fixed
8.0.3 5444 26 Sep 2006 Fixed
Description
The MobiLink server was not able to upload data from an ASA char/varchar column to a Microsoft SQL Server nchar/nvarchar column, if the column width defined in the remote database was greater than 2000 bytes. The Microsoft ODBC driver would have given the error "Invalid precision value", when the MobiLink client tried to upload data to a table that contained such columns. This problem is fixed now.



CR:442685
CR Number:   442685
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2962 26 Sep 2006 Fixed
10.0.0 2706 26 Sep 2006 Fixed
Description
When using the debugger in Sybase Central, adding an expression in the Watch dialog that contained a '-' character, would not have been evaluated. This has been fix by enclosing watch expressions in quotes.



CR:442704
CR Number:   442704
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Windows CE 2.11
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3271 16 Oct 2006 Fixed
10.0.0 2729 16 Oct 2006 Fixed
Description
If the library dblsn_sms.dll was missing from a Windows CE install, the MobiLink Listener would have displayed the error : "An error happens in the command near the -a option". Since SMS support is optionally installed, the Listener has been changed to allow it to start even if SMS support is not installed.



CR:442727
CR Number:   442727
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Linux
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3275 23 Oct 2006 Fixed
10.0.0 2738 23 Oct 2006 Fixed
Description
If the option to create KDE or GNOME desktop icons was chosen during installation, the icons for the documentation (i.e. the readme, contents.html, and the Check for Updates link) always pointed to the English versions of these files, regardless of the user's current locale. This has been fixed so that the installer will attempt to change the links if they already exist, and make them match the system language as set at EBF install time.



CR:442761
CR Number:   442761
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 3378 25 Sep 2006 Fixed
8.0.3 5444 25 Sep 2006 Fixed
Description
The server could have failed with a 'Fatal error: disk full' error when writing to the temporary file, even with TEMP_SPACE_LIMIT_CHECK turned on. This has been fixed.



CR:442767
CR Number:   442767
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2956 25 Sep 2006 Fixed
10.0.0 2701 25 Sep 2006 Fixed
9.0.2 3376 25 Sep 2006 Fixed
Description
Applications calling a procedure with a blob output parameter could have crashed if any parameters of the procedure were derived by calling the SACommandParameter.DeriveParameters() method. The SACommandBuilder.DeriveParameters() method was setting the size of output blob parameters to 2GB, which caused a memory access violation. This has been fixed by changing the Size of blob parameters to the default value (32767).



CR:442778
CR Number:   442778
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2963 25 Sep 2006 Fixed
10.0.0 2509 25 Sep 2006 Fixed
Description
Immediately after opening a modal dialog, Sybase Central may have ignored keystrokes until a different window was activated. This problem would have been intermittent and was not specific to any particular wizard, property sheet, or dialog. It is now fixed.



Note, this problem affected the Interactive SQL utility, which is fixed as well.



CR:442783
CR Number:   442783
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2962 25 Sep 2006 Fixed
10.0.0 2706 25 Sep 2006 Fixed
Description
Queries using LIKE conditions, were ignoring the case sensitivity of the database and always doing case sensitive comparisons. Rows that should have matched the LIKE condition where being excluded from result sets. This has been fixed so that LIKE now properly follows the case sensitivity of the database.



CR:442787
CR Number:   442787
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)
10.0.1 2963 26 Sep 2006 Fixed
10.0.0 2509 26 Sep 2006 Fixed
9.0.2 3379 26 Sep 2006 Fixed
Description
The registry entry for the two Dbmlsync Integration Components did not indicate the threading model that were used. This prevented some containers from loading the ActiveX components. Now, when these ActiveX components are registered, it appropriate entries are created in the registry to indicate that it supports the Apartment threading model.



CR:442791
CR Number:   442791
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.1 2963 26 Sep 2006 Fixed
10.0.0 2509 26 Sep 2006 Fixed
9.0.2 3379 26 Sep 2006 Fixed
8.0.3 5445 26 Sep 2006 Fixed
Description
Creating a user defined domain with a long default value or CHECK condition (greater than ~258 characters) would have caused a memory leak. This has been fixed.



CR:442793
CR Number:   442793
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2963 26 Sep 2006 Fixed
10.0.0 2509 26 Sep 2006 Fixed
Description
If a dbspace name required double-quotes (i.e., the name contained characters such as '-'), then rebuilding the database would have failed with a SQL syntax error. This has been fixed by putting the dbspace name in double quotes in the ALTER DBSPACE statement that is issued to pre-grow the dbspaces.



CR:442794
CR Number:   442794
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3263 25 Sep 2006 Fixed
10.0.0 2709 25 Sep 2006 Fixed
Description
In the Interactive SQL utility, the result set from selecting all columns from a materialized view was editable, although trying to save the changes would have caused an error message. Now, the table is not editable.



CR:442801
CR Number:   442801
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3265 26 Sep 2006 Fixed
10.0.0 2713 26 Sep 2006 Fixed
Description
Attempted to insert a row into an UltraLite table by using the Results panel in the Interactive SQL utility, or the Data tab in the UltraLite plug-in, would have caused an error message saying that primary key cannot be null. UltraLite considers the primary key columns to be read-only. The ResultSetTable component should have been ignoring the read-only desgination when inserting rows for primary keys. This has been fixed.



CR:442839
CR Number:   442839
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Windows CE 2.0
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3273 19 Oct 2006 Fixed
10.0.0 2734 19 Oct 2006 Fixed
Description
The Embedded SQL sample program for Windows CE (esql_sample) would have failed to connect when running on ARMv4T devices. This sample program had an incorrect connection string. It has been updated to correctly use "DSN=SQL Anywhere 10 Demo.dsn"



CR:442898
CR Number:   442898
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.1 3263 26 Sep 2006 Fixed
10.0.0 2710 26 Sep 2006 Fixed
9.0.2 3380 26 Sep 2006 Fixed
Description
If a server-initiated synchronization property was set to the empty string or blanks, the property was treated as not set. Blank padded strings were trimed. This has been fixed so that string properties are accepted as is.



CR:442915
CR Number:   442915
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 29 Sep 2006 Fixed
10.0.0 2716 29 Sep 2006 Fixed
Description
CREATE TABLE or DROP TABLE statements could have failed to execute (or the Import Wizard could have failed to complete properly), reporting the following error:



A schema upgrade is not currently allowed[SQL Offset: 0]

SQLState=ERROR, ErrorCode=-953



This was typically seen after executing a SELECT statement, whose result set was displayed in the "Results" pane, and either the result set was edited, or the "Show multiple result sets" option was on. This has been fixed.



CR:442928
CR Number:   442928
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.1 3263 26 Sep 2006 Fixed
10.0.0 2474 26 Sep 2006 Fixed
9.0.2 3381 26 Sep 2006 Fixed
Description
If a server was run on a big endian machine, then attempting to retrieve an unsigned integer value from a remote server could have returned a 0 instead of the actual value. This problem has been fixed.



CR:442932
CR Number:   442932
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   4.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 27 Sep 2006 Fixed
10.0.0 2711 27 Sep 2006 Fixed
Description
When the graphical admin tools were run on Linux, the standard CTRL+C (Copy), CTRL+X (Cut), and Ctrl+V (Paste) accelerators did not work in most text fields. This has been correct so they now do.



A workaround would be to use the following keystrokes:

CTRL+INS Copy

SHIFT+INS Paste

SHIFT+DEL Cut



CR:442935
CR Number:   442935
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3470 06 Feb 2007 Fixed
Description
A predicate of the form:

<column> LIKE <pattern>

where <column> is a column of exact numeric type <DOMAIN> and <pattern> is a constant string containing no wild-cards should generate a sargable predicate:

<column> = CAST( <pattern> AS <DOMAIN> )



For example, the query:

select * from systab where table_id like '1'

should consider using an index scan on systab.table_id = 1, but this inference was not performed. This has been fixed. See also Engineering case 336013.



CR:443005
CR Number:   443005
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 10 Oct 2006 Fixed
10.0.0 2724 10 Oct 2006 Fixed
Description
The system procedure xp_cmdshell() did not work on Windows CE. This has been fixed. To run this procedure the command shell executable "\\windows\cmd.exe" is required. Note that the parameter 'no_output' is ignored on Windows CE.



CR:443013
CR Number:   443013
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 27 Sep 2006 Fixed
10.0.0 2711 27 Sep 2006 Fixed
Description
Odd and misleading errors may be generated when a lossy charset conversion occurs on database filenames during database initialization (i.e., dbinit). The error may look something like "@default collation could not be found". This situation can happen in all cases where a lossy conversion is present between OS charset and database charset, such as when creating an English database on a Japanese machine using Japanese characters in the filenames. The loss occurs as a result of converting the filenames to database charset as they are sent to the database and stored in the catalog. This problem applies to the database, log, and mirror-log filenames.



If this loss is an issue, a database character set for which no loss occurs should be chosen. For example, choosing UTF8 on a Japanese machine will ensure that filenames are preserved.



We now make a better attempt at reporting character set conversion errors on database filenames.



CR:443014
CR Number:   443014
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 27 Sep 2006 Fixed
10.0.0 2475 27 Sep 2006 Fixed
Description
A DELETE statement could have caused the server to crash if the schema of the table being deleted from had certain attributes. The problem has been resolved.



CR:443015
CR Number:   443015
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 28 Sep 2006 Fixed
10.0.0 2519 28 Sep 2006 Fixed
Description
The server could have failed an assertion when deleting or updating a long row. For this to have occurred, there must be at least two pages worth of row data. The most likely assertion would have been 201501 - Page for requested record not a table page or record not present on page. There was also a chance, although unlikely, of table corruption if there were many concurrent inserts or updates of long rows. This has now been fixed.



CR:443016
CR Number:   443016
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 29 Sep 2006 Fixed
10.0.0 2711 29 Sep 2006 Fixed
Description
If a stored procedure contained a simple statement that referenced a table that was subsequently modified by an ALTER TABLE statement, it was possible for the server to have crashed on a subsequent call to the procedure. This has been fixed.



CR:443017
CR Number:   443017
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2954 27 Sep 2006 Fixed
10.0.0 2699 27 Sep 2006 Fixed
Description
Executing a query that contained a distinct aggregate, and a sufficiently complex grouping specification, could have crashed the server. This has been fixed.



CR:443027
CR Number:   443027
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 29 Sep 2006 Fixed
10.0.0 2711 29 Sep 2006 Fixed
9.0.2 3381 29 Sep 2006 Fixed
8.0.3 5446 29 Sep 2006 Fixed
Description
The Interactive SQL utility, as well as Sybase Central and DBConsole, would not have operated correctly when connected to a SQL Anywhere database that had the SQL_flagger_error_level or SQL_flagger_warning_level options set to anything other than 'W'. Typical behavior included getting the error message Disallowed language extension detected..." when connecting. This has been fixed.



CR:443040
CR Number:   443040
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 28 Sep 2006 Fixed
10.0.0 2711 28 Sep 2006 Fixed
Description
A server which was not running a database could have crashed if dblocate -d was run. Also, dblocate -d was not reporting 10.0.0 servers which were not running any databases. This has been fixed so that a server running no database will no longer crash, and dblocate -d will list the server.



CR:443041
CR Number:   443041
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.0 2704 28 Sep 2006 Fixed
Description
When the server is under a heavy load, with many INSERT, UPDATE and DELETE requests, checkpoints might have caused the server to slow down for as much as a minute because of heavy disk writes. This has been fixed.



CR:443043
CR Number:   443043
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2955 29 Sep 2006 Fixed
10.0.0 2699 29 Sep 2006 Fixed
Description
A query whose plan contained a merge join, with join conditions on columns that formed a proper prefix of an ORDER BY, could have failed with the error -300 "Field unexpected during compilation", if the merge join was in an unflattened derived table or a select with a GROUP BY, and after the prefix matching the join condition, the ODER BY contained columns from a table that was above the merge join in the plan. This has been fixed.



CR:443053
CR Number:   443053
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 29 Sep 2006 Fixed
10.0.0 2711 29 Sep 2006 Fixed
Description
Allocating space for a row could have taken a long time. The larger the table, the longer the allocation time could have been, as allocating space for a row could have involved reading all of the pages in a table. This has been fixed.



CR:443154
CR Number:   443154
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.1 2896 28 Sep 2006 Fixed
10.0.0 2704 28 Sep 2006 Fixed
Description
On Windows platforms (desktop and Pocket PC), there are two types of ULPod dlls that are shipped. The first is built with the standard UltraLite runtime for Windows desktop and Pocket PC. In the SA install directory, they are named ulpod10.dll and ulpod.cab (contains ulpod10.dll and ulrt10.dll). The second is built with the client/server version of the UltraLite runtime. It is named ulpodclient10.dll.



In the ULPod documentation, and in the sample readme file, it is explicitly emphasized that only one type of the ULPod dll file should be deployed to the client device. It must be either the standard ulpod10.dll or the client/server version ulpodclient10.dll, but never both. The reason is that when the M-Business client browser AvantGo.exe launches, it will load ALL the dll files it can find in the pods directory. If both ulpod10.dll and ulpodclient10.dll are found in the pods directory, both are loaded into memory. Then when the JavaScript code tries to create a ULPod DatabaseManager object:



var DatabaseMgr = CreateObject( "iAnywhere.UltraLite.DatabaseManager.CustDB" );



both ulpod10.dll and ulpodclient10.dll are asked by the AvantGo JavaScript engine to claim ownership of the pods object name. The result is random. If ulpodclient10.dll is first called to claim the ownership, and if there is no uleng10.exe installed on the device, an error will be returned saying the UltraLite engine cannot be found.



To solve this problem, a new section has been added to the standard ULPod pods object namespace to clearly identify which ULPod DLL should be loaded. The previous ULPod name prefix was "iAnywhere.UltraLite.DatabaseManager", followed by the application name. The new rules now add ".Standalone" or ".Engine" after the previous ULPod name space, and before the application name.



Thus if the standard ULPod dll is required, the following call should be made:



var DatabaseMgr = CreateObject( "iAnywhere.UltraLite.DatabaseManager.Standalone.CustDB" );



if the client/server version of ULPod dll is required, the following call should be made:



var DatabaseMgr = CreateObject( "iAnywhere.UltraLite.DatabaseManager.Engine.CustDB" );



If no runtime-type is provided in the object name prefix, and both dlls are found in the pods directory, which ULPod dll is loaded will be non-deterministic as before.



CR:443164
CR Number:   443164
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 02 Oct 2006 Fixed
10.0.0 2712 02 Oct 2006 Fixed
Description
When run on multi-processor machines, the server may have crashed, although very unlikely, if the startup of a parallelized query occurred as the server was shutting down. This is fixed.



CR:443174
CR Number:   443174
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 29 Sep 2006 Fixed
10.0.0 2725 29 Sep 2006 Fixed
Description
In some rare cases, the server could have shown periodic spikes in CPU usage even though there were no requests currently executing. The spike would have lasted for appromimately half a second, with an interval of about 20 seconds. This has been fixed.



CR:443180
CR Number:   443180
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 29 Sep 2006 Fixed
10.0.0 2712 29 Sep 2006 Fixed
Description
It was not possible to insert a zero length value into a BINARY column by inserting or editing a row in the "Results" panel.

Also, when connected to an UltraLite database, the tooltip for column headers for result sets showed the wrong size for non-numeric types that have a variable size. For example, the type of a BINARY(20) column was displayed as "binary(0)".

Both of these problems have now been fixed.



CR:443214
CR Number:   443214
Product Name:   MobiLink
Product Component:   Java Plugin for Sybase Central
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 02 Oct 2006 Fixed
10.0.0 2713 02 Oct 2006 Fixed
Description
If one or more modified column mappings were selected, and the Undo toolbar button was clicked or the Edit -> Undo menu item was selected, then in some cases the original column mappings would not have been restored. This has been fixed.



CR:443256
CR Number:   443256
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3265 29 Sep 2006 Fixed
10.0.0 2713 29 Sep 2006 Fixed
Description
Executing an UPDATE WHERE CURRENT OF cursor, DELETE WHERE CURRENT OF cursor, or WRITETEXT statement could have caused the server to fail an assertion (likely 201500 or 201501), if another connection was concurrently deleting the row. This cannot have happened at isolation levels 2 or 3. This has been fixed.



CR:443272
CR Number:   443272
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3265 02 Oct 2006 Fixed
10.0.0 2519 02 Oct 2006 Fixed
Description
Validating indexes in other than the SYSTEM dbspace, could have caused the server to fail an assertion, or to have crashed. This has been fixed.



CR:443274
CR Number:   443274
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3265 29 Sep 2006 Fixed
10.0.0 2713 29 Sep 2006 Fixed
Description
If a row was added to a the Result Set table, then 'NO' was clicked in the confirmation dialog, the dialog prompting to save it would have been displayed again. This has been fixed.



CR:443285
CR Number:   443285
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 29 Sep 2006 Fixed
10.0.0 2716 29 Sep 2006 Fixed
9.0.2 3383 29 Sep 2006 Fixed
8.0.3 5448 29 Sep 2006 Fixed
Description
The utilities dbunload, dbbackup and dbinfo, would not have operated correctly when connected to a SQL Anywhere database that had the SQL_flagger_error_level or SQL_flagger_warning_level options set to anything other than 'W'. Typical behavior included getting the error message Disallowed language extension detected..." when connecting. This has been fixed.



CR:443290
CR Number:   443290
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2953 29 Sep 2006 Fixed
10.0.0 2699 29 Sep 2006 Fixed
Description
A new value of AsaDbType.Xml/SADbType.Xml has been added to AsaDbType/SADbType enum.



CR:443315
CR Number:   443315
Product Name:   MobiLink
Product Component:   Java Plugin for Sybase Central
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3265 03 Oct 2006 Fixed
10.0.0 2713 03 Oct 2006 Fixed
Description
For synchronization models where some columns were not synchronized in synchronized remote tables, the CREATE PUBLICATION statement in the remote would have correctly listed only the synchronized columns, but the ml_add_column statements generated for the remote would have also included all the remote columns. This would have caused a problem when synchronizing. This has been fixed so that the ml_add_column statements are now only generated for synchronized columns.



CR:443321
CR Number:   443321
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3265 02 Oct 2006 Fixed
10.0.0 2713 02 Oct 2006 Fixed
Description
If the server connection was terminated while the Interactive SQL utility was still running, the loss of connection would have been reported, but the title bar text would not have been updated. This has been fixed.



CR:443368
CR Number:   443368
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)
10.0.1 3265 03 Oct 2006 Fixed
10.0.0 2715 03 Oct 2006 Fixed
Description
When using the Support utility with the -sa switch "submit all reports and diagnostic info", extraneous 'File not found' messages could have been printed. This has been fixed.



CR:443455
CR Number:   443455
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3264 03 Oct 2006 Fixed
10.0.0 2711 03 Oct 2006 Fixed
9.0.2 3381 03 Oct 2006 Fixed
Description
When the QAnywhere agent was idle, that is not performing message transmissions, there was a small spike in the CPU usage every 10 seconds. This has been addressed by increasing the interval at which the message store is polled to 15 minutes. A signaling mechanism is used to trigger a message transmission when certain events happen in the message store, such as a message being put on a queue, or a push notification being received.



CR:443456
CR Number:   443456
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 03 Oct 2006 Fixed
10.0.0 2716 03 Oct 2006 Fixed
Description
Clearing deadlock information from Deadlocks Panel and closing the database properties dialog, would have resulted in a NullPointerException. This has been fixed.



CR:443473
CR Number:   443473
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3268 06 Oct 2006 Fixed
10.0.0 2719 06 Oct 2006 Fixed
9.0.2 3385 06 Oct 2006 Fixed
9.0.1 2183 06 Oct 2006 Fixed
8.0.3 5450 06 Oct 2006 Fixed
Description
When a stored procedure call with a return value was prepared, the provider would have generated a call with an incorrect number of parameters. The following Visual Basic code demostrates the problem:



objCmd = CreateObject("ADODB.Command")

objCmd.CommandText = "Add_User"

objCmd.CommandType = adCmdStoredProc

objCmd.ActiveConnection = objConn

objCmd.Prepared = True

objCmd.Parameters.Append(objCmd.CreateParameter("Add_User", 3, 4))

objCmd.Parameters.Append(objCmd.CreateParameter("@userid", 200, 1, 25, "jbjones"))

objCmd.Parameters.Append(objCmd.CreateParameter("@first", 200, 1, 25, "John"))

objCmd.Parameters.Append(objCmd.CreateParameter("@last", 200, 1, 35, "Jones"))

objCmd.Parameters.Append(objCmd.CreateParameter("@phone", 200, 1, 18, "5558836300"))

objCmd.Parameters.Append(objCmd.CreateParameter("@extension", 200, 1, 6, "6300"))



An erroneous SQL statement like the following is generated.



?=call Add_User(?,?,?,?)



If the objCmd.Prepared = True statement was not included , or the Prepared property was set to False, then the problem did not appear. This has now been fixed.



CR:443495
CR Number:   443495
Product Name:   UltraLite
Product Component:   UltraLite for M-Business Anywhere
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2960 02 Oct 2006 Fixed
10.0.0 2704 02 Oct 2006 Fixed
9.0.2 3377 02 Oct 2006 Fixed
Description
Previously, ULPod only allowed one database connection per database manager. Opening a new connection meant that the existing connection had to be closed first. Now a DatabaseManager pods can open up to 10 different connections at the same time. Opening more than 10 connections will result a SQLE_TOO_MANY_CONNECTIONS error being returned. At this point, existing connections will need to be closed in order to open new ones. To maintain the behavior compatibility with the prvious ULPod, this new feature is

achieved through new methods on the DatabaseManager object.



New API methods:



For SA 10

ULPodConnection DatabaseManager.openConnectionEx(string conString)

ULPodConnection DatabaseManager.reOpenConnectionEx(string conName)



For ASA 9

ULPodConnection DatabaseManager.createDatabaseEx(string conString)

ULPodConnection DatabaseManager.createDatabaseWithParmsEx(ConnectionParms parm)

ULPodConnection DatabaseManager.openConnectionEx(string conString)

ULPodConnection DatabaseManager.openConnectionWithParmsEx(ConnectionParms parm )

ULPodConnection DatabaseManager.reOpenConnectionEx(string conName)



The difference between the Ex() and non-Ex() functions is that the Ex() version

supports multiple connections, while the non-Ex functions do not.



CR:443513
CR Number:   443513
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3283 07 Nov 2006 Fixed
10.0.0 2713 05 Oct 2006 Fixed
Description
The database server could have crashed, or hung, when diagnostic tracing was enabled (and especially as it was being saved) and the server was processing large numbers of simultaneous requests. This was more likely if graphical plans were being traced, and connections were frequently cancelled at the time the tracing session was saved. This has has now been fixed.



CR:443515
CR Number:   443515
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 04 Oct 2006 Fixed
10.0.0 2480 04 Oct 2006 Fixed
Description
The MobiLink server could have silently failed to start, if more than one secure stream was specified by the -x 'communications parameters' command line option. This has now been fixed.



CR:443524
CR Number:   443524
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 30 Apr 2007 Presently Not Targeted For Any Future Release Of This Product
10.0.0 2716 05 Oct 2006 Fixed
Description
The traced_plan() function could have caused the server to fail an assertion (106900 or 106901), if passed an invalid query number. This has been fixed so that traced_plan() now correctly returns NULL in this case.



CR:443551
CR Number:   443551
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 03 Oct 2006 Fixed
Description
The Unload or Extract Database wizards could not have been used to automatically create a new database with simple table-only encryption, and reload into this database. This has been fixed. In addition, when a new database is chosen to be reloaded, the new database's encryption settings now default to the same settings as the database which was being unloaded or extracted.



CR:443564
CR Number:   443564
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 3385 10 Oct 2006 Fixed
Description
The server could have reported an assertion failure when processing an INSERT statement for a table that had a particular form of publication. For example, fhe following assertion failure could be reported: "Assertion failed: 102501 (9.0.2.xxx) Work table: NULL value inserted into not-NULL column" In this case, the INSERT statement would fail, but the server would continue to run and remain available for further requests. This has been fixed.



CR:443566
CR Number:   443566
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3283 07 Nov 2006 Fixed
10.0.0 2717 03 Oct 2006 Fixed
Description
A security issue has been fixed, resolving a case where, in limited circumstances, connected users were able to access data they were not authorized to access.



CR:443595
CR Number:   443595
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 05 Oct 2006 Fixed
10.0.0 2717 05 Oct 2006 Fixed
Description
If a new column was added to a table using ALTER TABLE ADD, and a default column value was specified, the value would not have been set when a row was added. The column value would instead have been set to null. This has now been corrected.



CR:443600
CR Number:   443600
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 05 Oct 2006 Fixed
10.0.0 2717 05 Oct 2006 Fixed
Description
Using the CONNECT statement to connect to a different user on the same database could have failed if the connection string required protocol-specific parameters (e.g. an IP address and port number for TCP/IP). This has been fixed by merging the protocol parameters needed from the existing connection.



CR:443602
CR Number:   443602
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 05 Oct 2006 Fixed
10.0.0 2717 05 Oct 2006 Fixed
Description
When using the MobiLink client to synchronize over HTTP through the redirector, if two remotes had the same Mobilink user, they would have both been redirected to the same Mobilink server. This could have impaired load-balancing, and been fixed.



CR:443613
CR Number:   443613
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Microsoft Windows
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3292 20 Nov 2006 Fixed
10.0.0 2756 21 Nov 2006 Fixed
Description
Data inserted by an application using the ADO.NET Provider, that contained characters from a multi-byte character set into a non-UTF8 database using host variables, would have appeared to have been truncated after being inserted into the database. When the provider converted the characters from UNICODE to multibyte, it did not set the length correctly. This has been fixed.



CR:443642
CR Number:   443642
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3272 13 Oct 2006 Fixed
10.0.0 2730 13 Oct 2006 Fixed
9.0.2 3389 13 Oct 2006 Fixed
8.0.3 5453 13 Oct 2006 Fixed
Description
If an application sent a timestamp structure host parameter which contained an invalid year, the server would not have generated an error if the database option Conversion_error was On. Timestamp structures are used for example, with the embedded

SQL type DT_TIMESTAMP_STRUCT, and the ODBC type SQL_TIMESTAMP. If a stored timestamp value with an invalid year was converted to a string, the year component of the string would have contained asterisks (e.g. ****-02-28 ). This has now been fixed so that the server correctly generates the error SQLE_CONVERSION_ERROR (-157) for invalis timestamp structures, even when the option Conversion_error is On.



CR:443644
CR Number:   443644
Product Name:   UltraLite
Product Component:   UL Java Provider for Sybase Central
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3267 11 Oct 2006 Fixed
10.0.0 2718 11 Oct 2006 Fixed
Description
Using the UltraLite plugin for Sybase Central to add a long binary column with a default value to a table, then switching to the Data view to add new rows, could have caused the error SQLE_DOUBLE_REQUEST. A crash could also have occurred. This has been fixed.



CR:443651
CR Number:   443651
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2948 04 Oct 2006 Fixed
10.0.0 2699 04 Oct 2006 Fixed
9.0.2 3372 04 Oct 2006 Fixed
Description
The default value of the PrefetchRows connection parameter has been changes from 10 to 200 as a performance optimization. That is if the PrefetchRow parameter is not specified, the ADO.NET Data Provider will set it to 200. The default value of AsaConnectionStringBuilder.PrefetchRow (and SAConnectionStringBuilder.PrefetchRow for SA 10) has also been changed to 200. Prefetching is disabled if the resultset has any blob columns.



CR:443655
CR Number:   443655
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3266 04 Oct 2006 Fixed
10.0.0 2716 04 Oct 2006 Fixed
Description
Several status messages have been added to the Initialize Database utility (ulinit), which will now be displayed after the banner.



For example:



SQL Anywhere UltraLite Database Generation Tool Version 10.0.0.2716

Loading schema

Creating empty UltraLite database

Collation: 1252LATIN1

Done creating database



CR:443657
CR Number:   443657
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3267 05 Oct 2006 Fixed
10.0.0 2718 05 Oct 2006 Fixed
Description
If a query contained an IN predicate with a large number of elements, and the predicate was used as a sargable predicate in an index scan, then the server could have reported an assertion failure: "101505 (10.0.0.xxx) Memory allocation size too large". This has been fixed. Now, IN predicates with too many elements will not be used to drive an index scan.



CR:443660
CR Number:   443660
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 2952 04 Oct 2006 Fixed
10.0.0 2699 04 Oct 2006 Fixed
Description
A problem with the UltraLite ODBC driver caused userids to be lost on database connections, from Sybase Central and the Interactive SQL utility, to Japanese database filenames. This has now been corrected.



CR:443671
CR Number:   443671
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)
10.0.1 3271 06 Oct 2006 Fixed
10.0.0 2729 06 Oct 2006 Fixed
9.0.2 3389 13 Oct 2006 Fixed
Description
If a statement was executed that returned a result set containing binary column values that were longer than about 1MB, the Interactive SQL utility could have become unresponsive for a length of time proportional to the width of the column data. This has been fixed. This performance problem could often be seen when selecting all columns from a proxy table to a directory access server.



CR:443693
CR Number:   443693
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3267 06 Oct 2006 Fixed
10.0.0 2718 06 Oct 2006 Fixed
Description
Synchronizing a database with complex foreign key relationships, or when using the table_order synchronization feature, may have resulted in the runtime crashing or possibly corrupting the database. This has now been fixed.



CR:443694
CR Number:   443694
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3267 06 Oct 2006 Fixed
10.0.0 2718 06 Oct 2006 Fixed
Description
When downloading using a slower network, it was possible to see the following error: "Aborting read because of liveness timeout". The synchronization would have failed, even though an active connection existed with the MobiLink server and data was being received. A fix has been made so that this problem should no longer be possible.



CR:443735
CR Number:   443735
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3267 06 Oct 2006 Fixed
10.0.0 2719 06 Oct 2006 Fixed
Description
The server could have reported a statement-level assertion failure when processing an INSERT ... ON EXISTING UPDATE statement, with a table that contained an autoincrement column that was part of the primary key. For example, the following sequence demonstrates the problem:



create table foo ( a integer primary key default autoincrement );

insert into foo on existing update select a from foo;



This has been fixed.



CR:443758
CR Number:   443758
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Microsoft Windows
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 10 Oct 2006 Fixed
10.0.0 2725 10 Oct 2006 Fixed
9.0.2 3387 10 Oct 2006 Fixed
Description
The dbisqlc utility would have crashed if an OUTPUT command redirected a non-deterministic result set. This has been fixed.



CR:443765
CR Number:   443765
Product Name:   SQL Anywhere
Product Component:   SNMP Extension Agent
Status:   Closed
OS:   Generic
Original Version:   9.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3268 10 Oct 2006 Fixed
10.0.0 2719 10 Oct 2006 Fixed
Description
The rdbmsDbLimitedResourceLimit, rdbmsDbLimitedResourceCurrent, and rdbmsDbLimitedResourceHighwater values in the rdbmsDbLimitedResourceTable table may have contained negative numbers. If the value would cause a 32-bit integer to overflow, the scale of units (bytes, KB, MB, etc.) is increased until the number no longer overflows. The rdbmsDbLimitedResourceDescription value now returns one of "Bytes", "KB", "MB", "GB", or "TB".



CR:443782
CR Number:   443782
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.1 3268 10 Oct 2006 Fixed
10.0.0 2719 10 Oct 2006 Fixed
9.0.2 3385 10 Oct 2006 Fixed
Description
An HTTP request to a web service running in the server with an arbitrary query string, would have been rejected with a 400 - 'Bad Request'. The SA web server required the query component of the request URL to have one or more name value pairs in the following format: 'name=value[&name2=value2...]'. This restriction has been removed, so that now an arbitrary query string will not be rejected.



For convenience, calling the http_header() function and specifying the pseudo-header @HttpQueryString will return the query string component of the URL verbatim. The function call next_http_variable() can be used to cycle through all the keys, regardless of whether or not they contain a value.

A query string with no key and a value (e.g. http://localhost/x_service?=value) can only be processed by parsing the query string as it is returned from an http_header('@HttpQueryString') call.



Example:

http://localhost/a_service?h&0&name=value&=x

http_header('@HttpQueryString') returns: h&0&name=value&=x

An iteration of the next_http_variable function would return the following keys: h, 0 and name (x is ignored). Using the http_variable function, the value of h and 0 is '' (empty string) and the value of name is value.



CR:443783
CR Number:   443783
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3268 10 Oct 2006 Fixed
10.0.0 2719 10 Oct 2006 Fixed
Description
The Interactive SQL utility could have reported an internal exception (IllegalStateException) after using the Import Wizard, if a result set had been displayed immediately before opening the wizard. The occurrence of this problem would have been rare, and was timing dependent. This has been fixed.



CR:443786
CR Number:   443786
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3268 06 Oct 2006 Fixed
10.0.0 2719 06 Oct 2006 Fixed
Description
When starting a database on a Windows CE device, the server may have erroneously reported the error "not expecting any operations in transaction log". For this error to be reported, the database must have previously been shutdown clean, the log file must have existed, and the "current" log page (the one to which the next operation will be written) must have been the last page in the transaction log. The server was not correctly detecting that it had reached the end of the transaction log on platforms for which transaction mirroring is not supported (ie. Windows CE). This has been fixed.



CR:443789
CR Number:   443789
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3268 10 Oct 2006 Fixed
10.0.0 2719 10 Oct 2006 Fixed
Description
If the MobiLink client was running such that it would have performed more than one synchronization in a single run, usually this would involve using the schedule extended option, and it successfully connected to the remote database for the first synchronization, but it was unable to reconnect to the remote database for a subsequent synchronization, it would have crashed. This has been fixed.



CR:443798
CR Number:   443798
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3277 16 Oct 2006 Fixed
9.0.2 3390 16 Oct 2006 Fixed
10.0.0 2744 16 Oct 2006 Fixed
Description
When calling the GetQueueDepth() method, it could have returned inconsistent values for the number of messages remaining in the queue. This has been fixed.



CR:443799
CR Number:   443799
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3268 06 Oct 2006 Fixed
10.0.0 2719 06 Oct 2006 Fixed
Description
If the client sent a timestamp structure host parameter that contained an invalid date or time, the server would not have generated an error if the database option 'Conversion_error' was On. Timestamp structures are used with the embedded SQL type DT_TIMESTAMP_STRUCT, and the ODBC types SQL_TIME, SQL_TIMESTAMP, SQL_TYPE_TIME, as well as other similar types. This has been fixed so that the server now correctly generates the error SQLE_CONVERSION_ERROR (-157) in this case.



CR:443841
CR Number:   443841
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3269 06 Oct 2006 Fixed
10.0.0 2720 06 Oct 2006 Fixed
Description
Complex expressions used above and below an outer join might not have been incorrectly null supplied, in a plan which allowed for parallel execution. This has been fixed.



CR:443842
CR Number:   443842
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3271 06 Oct 2006 Fixed
10.0.0 2752 06 Oct 2006 Fixed
Description
With the database option 'On_charset_conversion_failure' set to a value other than 'Ignore', the server would not have reported failures during character set conversion. This has been fixed.



This fix affects both the server and dbicu library - if the server starts a database that requires dbicu, then both the server and dbicu library must have this fix. If the server has this fix but dbicu does not, then the server will display the following message when it attempts to load the database:



"Unable to start database "<dbname>": dbicu library version mismatch"



CR:443845
CR Number:   443845
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Generic
Original Version:   8.0.3
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3269 06 Oct 2006 Fixed
10.0.0 2720 06 Oct 2006 Fixed
9.0.2 3385 06 Oct 2006 Fixed
9.0.1 2183 06 Oct 2006 Fixed
8.0.3 5450 06 Oct 2006 Fixed
Description
When using ADO and the SQL Anywhere OLE DB provider, a stored procedure reference like "SProc" is correctly parsed in a CommandText string as a procedure name. However, a stored procedure reference like "DBA.SProc" was incorrectly parsed as a schema owner, followed by a catalog name, and no procedure name. The following Visual Basic example fragment illustrates the problem:



objCmd.ActiveConnection = objConn

' Set CommandText equal to the stored procedure name.

objCmd.CommandText = "DBA.SProc"

objCmd.CommandType = adCmdStoredProc

' Automatically fill in parameter info for the stored procedure.

objCmd.Parameters.Refresh()

' Set the parameter values.

objCmd("@user_id") = "ianywhere"

objCmd("@password") = "test"

objCmd("@first") = "Iam"

objCmd("@last") = "Anywhere"

objCmd("@phone") = "5558836300"

objCmd("@extension") = "6300"



When ADO executeed the Refresh() method, the provider was asked to provide parameter information on the "SProc" stored procedure. A catalog name ("SProc") and schema owner name ("DBA") were passed in. Since catalog names are not supported and ignored, information on all stored procedures owned by DBA were returned to ADO.



This problem has been fixed. An incorrectly set property, DBPROP_CATALOGLOCATION, resulted in the parsing error. The property value has been corrected.



CR:443856
CR Number:   443856
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 3385 10 Oct 2006 Fixed
Description
If the non-security version of UltraLite.NET was installed and an attempt was made to use the HTTPS synchronization stream, no error would have been displayed and the SyncParms.Stream would have been set to UNKNOWN. A SQLException SQLE_COULD_NOT_LOAD_LIBRARY is now thrown. This is the same error that occurs when trying to set the HTTPS stream with the security version of UltraLite.NET and the native ulrsaw9.dll is missing.



CR:443864
CR Number:   443864
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3267 06 Oct 2006 Fixed
10.0.0 2719 06 Oct 2006 Fixed
Description
The server could have appeared to be hung in certain situations. This was more likely to occur at checkpoint time, and when other connections were processing large strings or blobs (approximately one database page in size or larger). This has been fixed.



CR:443881
CR Number:   443881
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3269 10 Oct 2006 Fixed
10.0.0 2721 10 Oct 2006 Fixed
Description
The QAnywhere Agent (qaagent) would sometimes have failed to launch the MobiLink Listener (dblsn) at start up. This was more likely to occur on Windows CE devices. This has been fixed.



CR:444106
CR Number:   444106
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.1 3277 10 Oct 2006 Fixed
10.0.0 2747 26 Oct 2006 Fixed
9.0.2 3385 26 Oct 2006 Fixed
Description
Complex disjunctive (OR) search conditions in a query's WHERE clause could have been incorrectly transformed by rewrite optimizations in the server, yielding a search condition not equivalent to the original, and hence yielding incorrect results. It is difficult to completely characterize the types of search conditions affected by this problem. However, for the problem to have occurred, the search condition must have contained so many disjunctive conditions that the condition exceeded a (generous) threshold of the maximal number of potential predicates to generate.



The following example illustrates the complexity of a search condition necessary for this problem to occur. However, the number of disjunctive clauses, and the number of predicates in each clause, are not alone a guarantee of exhibiting the problem:



select count(*)

from in_all

where

(d4=1 and d5=9 and d6=90 and d8=122)

and

(

(d7=4 and d8=122 and d9=138)

or (d8=122 and d9=112)

or (d3=57 and d7=4 and d8=122 and d10=4)

or (d8=122 and d9=65)

or (d3=76 and d7=1 and d8=122 and d9=62 and d10=2)

or (d3=62 and d4=1 and d7=1 and d10=2)

or (d3=76 and d4=1 and d5=9 and d7=3 and d10=1)

or (d3=55 and d4=1 and d5=9 and d6=90)

or (d3=124 and d7=4 and d8=122)

or (d4=1 and d7=2 and d8=122 and d9=37 and d10=1)

or (d3=22 and d7=1 and d8=122 and d10=2)

or (d3=76 and d4=1 and d5=9 and d8=122 and d9=37)

or (d3=31 and d7=1 and d8=122 and d9=59 and d10=2)

or (d3=57 and d4=1 and d7=1 and d8=122 and d9=59 and d10=2)

or (d3=110 and d4=1 and d5=9 and d10=4)

or (d3=76 and d7=1 and d8=122 and d9=23 and d10=3)

or (d3=150 and d7=1 and d8=122 and d9=23 and d10=2)

or (d3=36 and d7=1 and d10=2)

or (d3=30 and d4=1 and d7=2 and d8=122)

or (d4=1 and d7=5 and d8=122 and d9=136 and d10=1)

or (d3=76 and d4=1 and d5=9 and d6=90 and d7=2 and d10=4)

or (d3=110 and d8=122 and d9=59 and d10=1)

or (d4=1 and d5=9 and d7=3 and d8=122 and d9=37 and d10=4)

or (d3=61 and d4=1 and d5=9 and d8=122)

or (d3=91 and d7=3 and d10=4)

or (d3=216 and d7=1 and d10=2)

or (d4=1 and d5=9 and d7=4 and d8=122 and d9=37)

or (d3=30 and d4=1 and d8=122 and d9=23)

)

and date1 = 200406



This has been fixed.



CR:444112
CR Number:   444112
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 11 Oct 2006 Fixed
10.0.0 2725 11 Oct 2006 Fixed
Description
If a database server involved in mirroring was given its own server name via the -xp command line option ("database mirroring options"), it will successfully connect to itself and begin "synchronizing" the database. This provides no benefit whatsoever, and can lead to data corruption. This has been fixed so that servers are now prevented from connecting to themselves.



CR:444121
CR Number:   444121
Product Name:   UltraLite
Product Component:   UltraLite for AppForge MobileVB
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 11 Oct 2006 Fixed
10.0.0 2725 11 Oct 2006 Fixed
Description
UltraLite for AppForge on Palm would have set 揢nknown error in the Description field of the error object (Err) when it should have set the field to SQLE_METHOD_CANNOT_BE_CALLED. The numeric value for the error was correct though (-669). This has been fixed.



CR:444122
CR Number:   444122
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3269 11 Oct 2006 Fixed
10.0.0 2721 11 Oct 2006 Fixed
Description
If a device that was running the QAnywhere Agent was powered off during the upload part of a MobiLink synchronization, after the completion of sending the upload data but before the acknowledgement of the upload, it was possible that all subsequent uploads would have failed. This has been fixed.



CR:444123
CR Number:   444123
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 11 Oct 2006 Fixed
10.0.0 2725 11 Oct 2006 Fixed
Description
The Interactive SQL utility could have become unresponsive if there windows open which were exectuing statements that led to the reporting a deadlock condition. This would have occurred if it had executed a call to stored procedure which was being debugged, the execution of a stored procedure call that was being debugged was cancelled. These conditions would also have caused Sybase Central to become unresponsive on Linux if the Interactive SQL utility was also running at the same time, and was itself unresponsive. These problems have been fixed.



CR:444125
CR Number:   444125
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 10 Oct 2006 Fixed
10.0.0 2725 10 Oct 2006 Fixed
Description
If the event_condition() function was referenced in the body of an event, the server could have crashed. This has been fixed. A workaround is to use the event_parameter() function instead.



CR:444132
CR Number:   444132
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 11 Oct 2006 Fixed
10.0.0 2725 11 Oct 2006 Fixed
Description
Using an UltraLite database with a collation using a multibyte character set and publication predicates that contained multi-byte characters, could have caused truncation of those predicates when saved to XML using the ulunload utility. This has been fixed.



CR:444135
CR Number:   444135
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3270 11 Oct 2006 Fixed
10.0.0 2725 11 Oct 2006 Fixed
Description
It was possible, although very rare, for a server under heavy load to have crashed when a client attempted to connect, that connection failed with a TCP/IP error. This type of TCP/IP error could have occurred, for example, if the client was terminated while it was in the process of connecting. This has been fixed.



CR:444140
CR Number:   444140
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)
11 Oct 2006 Fixed
Description
When an INSERT ... ON EXISTING UPDATE statement was executed against a table with an AFTER UPDATE ... FOR EACH STATEMENT trigger, the trigger would fire once for each row in the insert that matched a row already in the table. This behaviour is incorrect, as the trigger should fire only in response to an UPDATE statement. This has been corrected so that now an AFTER UPDATE ... FOR EACH STATEMENT trigger will not fire in response to an INSERT ... ON EXISTING UPDATE statement. Note, however, that any AFTER UPDATE ... FOR EACH ROW triggers will still fire.



CR:444168
CR Number:   444168
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.1 3309 05 Dec 2006 Fixed
10.0.0 2766 05 Dec 2006 Fixed
Description
Setting the option Truncate_timestamp_values to On when the option Default_timestamp_increment had a value greater than 1, may have caused the assertion failure 106205 - "Attempting to store invalid timestamp value ..." This has been fixed by changing the maximum value for Default_timestamp_increment to 1000000 (1 second).



CR:444260
CR Number:   444260
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3267 12 Oct 2006 Fixed
10.0.0 2719 12 Oct 2006 Fixed
Description
If a CREATE DATABASE statement with a DATABASE SIZE clause caused the database file to grow beyond the space available on the file's device, the server would have failed with a fatal error signifying that disk space had been exhausted. The same behavour would have been observed with the -dbs command line option ('set initial database size') of dbinit. This has been fixed. The server now raises a SQL error rather than the fatal error.



CR:444273
CR Number:   444273
Product Name:   UltraLite
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3271 12 Oct 2006 Fixed
10.0.0 2728 12 Oct 2006 Fixed
Description
When connected to an UltraLite database, the DESCRIBE TABLE statement would have failed with an error, if the tablename contained any underscore '_' or percent '%' characters. This has been fixed.



CR:444284
CR Number:   444284
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
10.0.1 3271 12 Oct 2006 Fixed
10.0.0 2728 12 Oct 2006 Fixed
9.0.2 3388 12 Oct 2006 Fixed
9.0.1 2184 12 Oct 2006 Fixed
Description
When preparing statements with non-ASCII characters, Dynamic SQL could have misinterpreted these characters causing unpredictable results. This has been fixed. A work around is to enclose strings containing these characters with double quotes.





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