远程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:701477
CR Number:   701477
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3604 13 Mar 2012 Fixed
Description
A SQL Anywhere server may have hang on shutdown with 100 percent CPU usage if HTTP requests were concurrently in process. This has been fixed.



CR:701635
CR Number:   701635
Product Name:   SQL Anywhere Monitor
Product Component:   SQL Anywhere Monitor
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3605 14 Mar 2012 Fixed
Description
Creation of a SAMonitor resource to monitor Relay Server farms via HTTPS may have failed, while HTTP worked. This would have happened when the Relay Server address specified in the Relay Server configuration file was missing the domain suffix. Even when the load balancer address given to the SAMonitor was a FQDN, the resource creation may have failed. This has now been fixed by making the monitor attempt its best effort to apply the domain suffix of the load balancer to the Relay Server address when it is missing while HTTPS is in use. If any of the Relay Server addresses, or the load balancer address, are specified in IPv6 or IPv4 numeric notation, then this fix will not kicks in and authentication will continue to fail. Use of FQDNs is required by the SAMonitor when HTTPS is used.



CR:701648
CR Number:   701648
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
16.0.0 1554 23 May 2013 Fixed
12.0.1 3907 23 May 2013 Fixed
11.0.1 2989 23 May 2013 Fixed
Description
Procedure profiling results would have shown an invalid execution time if the total execution time of the request exceeded 4,294,967,295 microseconds. This has been fixed.



CR:701651
CR Number:   701651
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   11.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3605 19 Mar 2012 Fixed
Description
Relay Server Outbound Enabler up channel packet header logging is enabled by setting the verbosity level (-v) to 3 or higher. The logs are useful for the analysis of certain issues. Two of the packet headers were carrying incomplete information:

<UpChannel-0000> 499 RS_CLI_SESSION_BEGIN(snum=0000 sfp=995770b6 ridx=0)

<UpChannel-0000> 557 RS_CLI_REQUEST_BEGIN(oidx=0 snum=0000 sfp=995770b6 ridx=0 sidx=0)

This has been fixed to complete the logging like the following:

<UpChannel-0000> 499 RS_CLI_SESSION_BEGIN(snum=0000 sfp=7329322a ridx=0 appt=2 per=1)

<UpChannel-0000> 557 RS_CLI_REQUEST_BEGIN(oidx=0 snum=0000 sfp=7329322a ridx=0 sidx=0 appt=2 per=0)



CR:701652
CR Number:   701652
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3712 27 Mar 2012 Fixed
11.0.1 2785 27 Mar 2012 Fixed
Description
When shutting down a database server on a Windows machine with a SQL Anywhere Volume Shadow Service (VSS) writer service active, the database server could have logged the message "Registered with the SQL Anywhere Volume Shadow Copy Service writer." many times to the console log. This problem has been fixed.



CR:701654
CR Number:   701654
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3605 19 Mar 2012 Fixed
Description
With UltraLiteJ for Android, the validateDatabase method has been added to the Connection class:

public void validateDatabase(

int flags,

ValidateDatabaseProgressListener listener,

String tableName )



The interfaces ValidateDatabaseProgressData, and ValidateDatabaseProgressListener have also been added.



CR:701661
CR Number:   701661
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3605 19 Mar 2012 Fixed
Description
Using the Certificate Creation utility with the -c option ("Read the signer's certificate from the specified file") could have caused it to crash. This has been fixed.



A workaround is to use the interactive prompt instead.



CR:701776
CR Number:   701776
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3706 19 Mar 2012 Fixed
12.0.0 2782 19 Mar 2012 Fixed
11.0.1 2777 19 Mar 2012 Fixed
Description
Support has now been added for Visual Studio 2012. The utility SetupVSPackage will now create the proper registry keys for Visual Studio 2012.



CR:701779
CR Number:   701779
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3713 30 Mar 2012 Fixed
Description
For the UltraLite C++ API, methods using wide characters (UTF-16/UCS-2) are generally only supported for Win32. This change adds wide character support for the character data streaming methods, on iOS. The affected methods are:

ULPreparedStatement::AppendParameterStringChunk

ULResultSet::GetStringChunk

ULResultSet::AppendStringChunk



CR:701922
CR Number:   701922
Product Name:   SQL Anywhere
Product Component:   Other
Status:   Closed
OS:   Generic
Original Version:   9.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3605 19 Mar 2012 Fixed
11.0.1 2776 19 Mar 2012 Fixed
Description
Use of some of the HTTP samples verbatim in a production system could have caused exposure to Cross Site Scripting (XSS) issues. This has been fixed.



Note that it is highly recommended that application developers and DBAs always review their web application code for possible security vulnerabilities before they are put into production. The Open Web Application Security Project (https://www.owasp.org) contains more information on how to secure your web application.



CR:702006
CR Number:   702006
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3605 21 Mar 2012 Fixed
Description
Indexes in UltraLiteJ now support index hashing using the "WITH MAX HASH SIZE x " SQL clause. Index hashing improves inserts, updates, deletes and searches when the columns being indexed have a good distribution of values (for example strings that do not have a common prefix) at the cost of bigger index structures. Hashed indexes locate rows first using the hash, then direct row comparison to differentiate rows with the same hash value. If the hash size is sufficiently big, the hash will uniquely identify a row without needing to read and compare the row. However, if the hash size is too big and the page size small, the index may need too many database pages whose maintenance costs offset the benefits of hashing. Columns of type REAL, DOUBLE, GEOMETRY, LONG BINARY and LONG VARCHAR are not hashed (LONG columns cannot be indexed in UltraLiteJ). If the SQL statement creating an index does not specify a hash size, the value of the Connection.OPTION_MAX_HASH_SIZE option is used as the default.



In addition to hashing support, performance improvements were made to indexing to reduce the number of pages written when committing inserts, updates and deletes.



CR:702086
CR Number:   702086
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3707 20 Mar 2012 Fixed
12.0.0 2783 20 Mar 2012 Fixed
Description
If a new IP address was added to a machine running a SQL Anywhere server, the server may have failed to recognize the new IP address. This would only have occurred when the server was running on a portable device (eg. laptop), or if the -xm switch was specified. This has been fixed.



CR:702184
CR Number:   702184
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3723 20 Apr 2012 Fixed
Description
If an application had a Java stored procedure defined with SQL SECURITY INVOKER, and the application subsequently called the stored procedure with two different effective userids from the same database connection, then the server would have incorrectly given a "table ExtEnvMethodArgs not found" error. This problem has now been fixed.



CR:702214
CR Number:   702214
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3750 18 Jun 2012 Fixed
Description
If an application called an external environment procedure that was defined with SQL SECURITY INVOKER and then subsequently made a stored procedure call using the server side connection, then there was a chance the call would have incorrectly fail with a permission denied error. This problem has now been fixed.



CR:702274
CR Number:   702274
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)
12.0.1 3709 23 Mar 2012 Fixed
Description
A potential security problem with the server has been corrected.



CR:702296
CR Number:   702296
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3711 27 Mar 2012 Fixed
11.0.1 2784 27 Mar 2012 Fixed
Description
When generating a reload.sql script, the server did not double-up single quotes and backslash characters in constant strings for dbspace file names in the CREATE DBSPACE statement, directory server paths in the CREATE SERVER statement, or AT location clauses of the CREATE EXISTING TABLE statement. As a result running the reload script would have failed and the generated objects would not have worked. This has been fixed.



CR:702423
CR Number:   702423
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3647 19 Apr 2012 Fixed
Description
While a copy node server was shutting down or restarting a mirrored database, the database may have made connections to the copy node's parent. This has been fixed. The copy node will no longer make connections to its parent while the database is shutting down or restarting.



CR:702506
CR Number:   702506
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
16.0.0 1620 29 Jul 2013 Fixed
12.0.1 3945 29 Jul 2013 Fixed
Description
The LOCATE function may have returned an incorrect result if the search string contained multi-byte characters. This has now been fixed.



CR:702528
CR Number:   702528
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   11.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3709 22 Mar 2012 Fixed
Description
The SQL Anywhere Monitor for Relay Server was the only means to observe the breakdown of time costs in different phases of a request, response processing. There were two issues with this:

1. The numbers rendered through the browser were aggregated and averaged across all requests going to the same backend server. So individual request tracing was not viewable.

2. The Monitor was not included in any rebundling of the Relay Server.



The verbose logging (-v 4) of the Relay Server Outbound Enabler (RSOE) of the DoneReceive event has now been enhanced to include a Since Last Sent (sls) number. The sls measures number of millisecond elapsed since the completion time of the last send that occurred on the same socket that had just completed a receive operation. This can be used as a measure of the backend server processing time, which includes the communication cost of sending the last packet (as the OS can declare completion before the packet is actually flushed) between the RSOE and the backend server (which normally should be minimal when they are local to each other). Here is a sample log line:



<Backend-0000> DoneReceive: sidx=0 ridx=0 socket=01227b58 sfp=f6c1ee75 len=65514 usage=8192 (12%) sls=0



If the backend server also reports a value for the overall request-response processing time, the associated sls value can be used to verify the qualify of the measurement without need to insert third party sniffing tools, which may, in some cases, change the network topology and invalidate the study.



CR:702731
CR Number:   702731
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3616 23 Mar 2012 Fixed
11.0.1 2781 23 Mar 2012 Fixed
Description
In rare, timing dependent cases when using High Availability or Read-Only Scale Out, it may have been possible for the server to crash, hang, behave in unexpected ways, or have an incorrect state. This has been fixed.



CR:702732
CR Number:   702732
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
02 Oct 2012 Not a Bug
Description
Starting the engine with many databases and not stopping each of them after validating, could cause memory exhausted error.



CR:702733
CR Number:   702733
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3713 29 Mar 2012 Fixed
12.0.0 2785 29 Mar 2012 Fixed
11.0.1 2786 29 Mar 2012 Fixed
Description
This change extends the fix for Engineering case 693560. In this case, the parallel hash filter could deadlock if a runtime error occurred while it was fetching. This has now been fixed.



CR:702738
CR Number:   702738
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3712 28 Mar 2012 Fixed
11.0.1 2785 28 Mar 2012 Fixed
Description
The server could have become deadlocked when updating blobs in a table with articles or triggers. This has now been corrected.



CR:702761
CR Number:   702761
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)
12.0.1 3709 23 Mar 2012 Fixed
Description
Synchronizations would have failed if the length of the parameter string for a sync profile was larger than 64K. The error reported could have varied, but SQLE_SYNC_INFO_INVALID would have been most likely. This error could have occurred with the .NET API if the application set sync authentication parameters whose total length approached or exceeded 64K. This problem has now been corrected.



CR:702774
CR Number:   702774
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)
12.0.1 3709 26 Mar 2012 Fixed
Description
When connected to a database which was mirrored, the server name displayed in the Interactive SQL title bar and the server name printed by the DESCRIBE CONNECTION statement, was inadvertently the alternate server name, rather than the main server name. The alternate server names tend to be long and end in a long sequence of letters and numbers. This has been corrected so that the main server name is now always used.



CR:702818
CR Number:   702818
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3710 26 Mar 2012 Fixed
Description
If a client with an old cookie accessed a blacked out backend service, the subsequent requests when the backend server comes back up will suffer load latency under low load situations. This has been fixed.



CR:702931
CR Number:   702931
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)
12.0.1 3620 26 Mar 2012 Fixed
12.0.0 2784 26 Mar 2012 Fixed
11.0.1 2783 26 Mar 2012 Fixed
Description
In very race cases, the server would have consumed 100% CPU usage while attempting to stop a database. For this to have occurred, the database being stopped needed to make heavy use of scheduled events. This has been fixed.



CR:703079
CR Number:   703079
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   11.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3623 29 Mar 2012 Fixed
11.0.1 2785 29 Mar 2012 Fixed
Description
If there were connections on the mirror database, or a copy node for a mirror database, that were modifying a temporary table at the same time as the transaction log was renamed, then the copy node or mirror could have failed in timing depending cases. In particular, the mirror server or copy node could have crashed or the transaction log on the mirror server or copy node could have been corrupted. This has been fixed.



CR:703083
CR Number:   703083
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3712 27 Mar 2012 Fixed
11.0.1 2785 27 Mar 2012 Fixed
Description
If the number of databases on the command line was near to or greater than the server concurrency setting (-gn), then the server could have crashed, or reported any of various assertion failures, during startup. The Personal Server was particularly susceptible since its default concurrency is only 20. This problem has been fixed.



CR:703100
CR Number:   703100
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)
12.0.1 3712 28 Mar 2012 Fixed
Description
When querying the TcpipAddresses, HttpAddresses, or HttpsAddresses properties from a server running on a Unix platform, any IPv6 addresses may have included a zone indicator (eg. the "%2" in "(fd77:55d:...:6a1f%2):2638". This was not useful outside the server's machine and should not have been included in the value of this property. This has been fixed.



CR:703102
CR Number:   703102
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3712 28 Mar 2012 Fixed
Description
When comparing two databases, running the generated script in Interactive SQL would have caused syntax errors to be reported if the script contained Transact-SQL statements. This has been fixed.



CR:703104
CR Number:   703104
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3712 28 Mar 2012 Fixed
11.0.1 2785 28 Mar 2012 Fixed
Description
When translating a transaction log with certain types of corruption, the Log Translation utility could have terminated silently, without reporting a problem. To the user, it would have appeared as if the translation completed successfully. This problem has been fixed.



CR:703225
CR Number:   703225
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3712 28 Mar 2012 Fixed
11.0.1 2785 28 Mar 2012 Fixed
Description
If a database had been created with a server from a version prior to 11.0.0, and it contained a proxy table with an index, then unloads of this database using a server from version 11.0.0 or later' would have generated an incorrect CREATE INDEX statement containing the IN "SYSTEM" clause. This has been fixed.



CR:703229
CR Number:   703229
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3712 29 Mar 2012 Fixed
Description
Performance improvements have been made when adding rows sequentially into an index. For example, a table whose primary key consists of an autoincrement column, or an initial download with a download cursor that sorts the download by primary key. When doing single inserts, UltraLiteJ now does less page reads and writes. When doing a block of inserts, the page read and writes may remain the same but CPU work has been greatly reduced.



CR:703234
CR Number:   703234
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Linux
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3721 19 Apr 2012 Failed
11.0.1 2800 19 Apr 2012 Fixed
Description
If a parallel backup with backup option WITH CHECKPOINT LOG RECOVER had finished its write pass but had disk I/O errors during its completion pass, then, in exceptionally rare circumstances, the backup may have incorrectly been marked as valid and no SQL error was returned. Also, if a parallel backup of the database file was cancelled after its read pass then the server may have crashed. Both problems have now been fixed.



CR:703288
CR Number:   703288
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3714 03 Apr 2012 Fixed
12.0.0 2785 03 Apr 2012 Fixed
11.0.1 2788 03 Apr 2012 Fixed
Description
When using a "managed resource only" deployment (such as Microsoft's ClickOnce) for .NET applications, delivering SQL Anywhere native dlls through this mechanism may have been a problem. A demonstration project DeploymentUtility (with source code) has been added to help with this. It adds SQL Anywhere native dlls as embedded resources, and copies them to a local drive when a .NET application is deployed.



CR:703450
CR Number:   703450
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3713 30 Mar 2012 Fixed
Description
Columns containing TIME values were not properly hashed in indexes. Although values were correctly ordered, they were not as efficient. This has been fixed.



CR:703452
CR Number:   703452
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Linux
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3660 30 Mar 2012 Fixed
11.0.1 2786 30 Mar 2012 Fixed
Description
If a SQL Anywhere client application exited abnormally, System V semaphores that were allocated by the SA libraries were not cleaned up. This problem affected all Unix platforms except Solaris, and has now been fixed.



CR:703642
CR Number:   703642
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3723 20 Apr 2012 Fixed
Description
If a database had a user defined type based on nchar, nvarchar or long nvarchar, then attempting to fetch a value defined with that user defined type would have incorrectly returned a binary value when the connection was via jConnect or Open Client. This problem has now been fixed.



Note that fetching nchar values defined with the nchar, nvarchar or long nvarchar base datatypes is not affected by this problem.



CR:703780
CR Number:   703780
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3714 03 Apr 2012 Fixed
Description
If a download for a particular table contained two rows with the same primary key value, UltraLiteJ would have thrown an exception with the warning SQLE_DUPLICATE_ROW_FOUND_IN_DOWNLOAD. This may have confused users into believing the download continued, when in fact the download had been rolled back. This has been fixed. UltraLiteJ now throws SQLE_PRIMARY_KEY_NOT_UNIQUE.



CR:703785
CR Number:   703785
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3713 02 Apr 2012 Fixed
Description
With UltraLiteJ for Android, DatabaseManager.release() had undesirable effects - it may have caused erratic behaviour when the application was relaunched after it was used when the application closes after initial launch. This has been fixed.



CR:703801
CR Number:   703801
Product Name:   UltraLite
Product Component:   Runtime Libraries
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3715 03 Apr 2012 Fixed
Description
HTTPS synchronizations using iOS 5 to a Windows (or Linux) Mobilink server, could have failed with secure handshake errors. The synchronization would have worked to a Mac OS X Mobilink server. This is now fixed.



CR:703805
CR Number:   703805
Product Name:   MobiLink
Product Component:   Streams
Status:   Open
OS:   Microsoft Windows 2000
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
Description
The MobiLink server on Windows would have failed to load an identity created by the Certificate Creation utility (createcert) run on Mac OSX with internal error: "ssl_CreateCertList(1) returned 12394". This has been fixed.



Note, this failure could also have occurred for MobiLink clients loading a client identity. This has been fixed as well.



CR:703812
CR Number:   703812
Product Name:   SAP Sybase SQL Anywhere on-demand edition
Product Component:   Agent
Status:   Closed
OS:   Windows
Original Version:   1.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
1.0.0 3622 02 Apr 2012 Fixed
Description
This is a test



CR:703815
CR Number:   703815
Product Name:   SAP Sybase SQL Anywhere on-demand edition
Product Component:   Cloud Console
Status:   Closed
OS:   Windows
Original Version:   1.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
1.0.0 3522 02 Apr 2012 Fixed
Description
This is a test



CR:703816
CR Number:   703816
Product Name:   SAP Sybase SQL Anywhere on-demand edition
Product Component:   Infrastructure
Status:   Closed
OS:   Windows
Original Version:   1.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
1.0.0 3422 02 Apr 2012 Fixed
Description
This is a test



CR:703817
CR Number:   703817
Product Name:   SAP Sybase SQL Anywhere on-demand edition
Product Component:   Utilities
Status:   Closed
OS:   Windows
Original Version:   1.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
1.0.0 3522 02 Apr 2012 Fixed
Description
This is a test



CR:703819
CR Number:   703819
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3714 03 Apr 2012 Fixed
Description
Rows with null values in BINARY(x) or UNIQUEIDENTIFIER columns, or small binary values in BINARY(x) columns (for example a 2 byte binary value stored in a column declared BINARY(512)), would have used more memory than necessary. This has been fixed.



CR:703837
CR Number:   703837
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
11.0.1 2824 07 Jun 2012 Fixed
Description
On Solaris 11 systems, the syntax highlighting editor component used in the Interactive SQL utility and Sybase Central displayed characters incorrectly. A blank was displayed after every character, even though the blank was not part of the SQL statements being edited. Because of the blanks, the caret (insertion point) was displayed in the wrong place, and the row/column indicators were incorrect, and in general, it was very difficult to enter and edit text in the editors.



The solution to this problem is to update the Java Runtime Environment to version 1.6.0_31 or later. Instructions for doing this are contained in a white paper called "Updating the SQL Anywhere Java Runtime Environment", available from the Sybase web site here:

http://www.sybase.com/detail?id=1058536



There are no code changes for this issue.



CR:704016
CR Number:   704016
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)
12.0.1 3632 04 Apr 2012 Fixed
Description
The server could have crashed if it was serving as a mirror server and became the primary, and a stored procedure referencing a catalog table was executed both before and after the transition. There is no known workaround. This has been fixed.



CR:704057
CR Number:   704057
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3719 16 Apr 2012 Fixed
11.0.1 2795 16 Apr 2012 Fixed
Description
If a database was created with 9.0.2.4029 or earlier, with any version of 10.0.0, or with 10.0.1.4072 or earlier, then upgraded (using the Upgrade utility or ALTER DATABASE UPGRADE) to a newer build of SQL Anywhere, the Unload utility could have erroneously generate SQL to re-create the jConnect-related objects "jdbc_functioncolumns" and "sp_jdbc_getfunctioncolumns" which are, after the builds indicated, included automatically in newly created databases.



Similarly, if a database was created with any version of 10.0.0, and then upgraded to any version of 10.0.1 or later, the Unload utility could erroneously have generate SQL to re-create the SQL Anywhere internal function "sa_ansi_standard_packages".



During a reload, these problems would have generated a message such as the following:

***** SQL error: Item 'jdbc_functioncolumns' already exists



These problems have been fixed.
Workaround Description
 There are possible workarounds to this. One option is to remove the

JConnect support { with `alter database upgrade jconnect off`} before

the upgrade. Others include added the object to the EXCLUDEOBJECT

table manually or drop them entirely.



CR:704191
CR Number:   704191
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   6.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3707 09 Apr 2012 Fixed
11.0.1 2780 09 Apr 2012 Fixed
Description
Changes have been made to Sybase Central to allow it to run with the Java 1.7 runtime.



Note, this change also relates to the Interactive SQL utility as well. Sybase Central and the Interactive SQL utility were not reviewed for compatibility.



CR:704202
CR Number:   704202
Product Name:   SQL Anywhere
Product Component:   Sybase Central Plug-in
Status:   Closed
OS:   Generic
Original Version:   6.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
11.0.1 2795 17 Apr 2012 Fixed
Description
In the Sybase Central window, the following menu items may be checked or unchecked:

view\status bar

view\Toolbars\Standard Toolbars

view\Toolbars\Context Bar

view\Toolbars\Context Title



When these items were checked a blue box appeared beside the item instead of a check mark. This has been fixed.



CR:704205
CR Number:   704205
Product Name:   SQL Anywhere
Product Component:   ISQL
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
11.0.1 2780 09 Apr 2012 Fixed
Description
Opening the query editor in the Interactive SQL utility (dbisql), and from the Tables tab, select certain pairs of tables would have caused an an error to have been reported indicating that dbisql has encountered a problem and must close. One pair of tables that caused the problem was SysTable and SysColumn. This has not been fixed.



Note, this problem would also have occurred with the SQL Anywhere plugin for Sybase Central, which is fixed as well.



CR:704453
CR Number:   704453
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3650 19 Apr 2012 Fixed
12.0.0 2788 19 Apr 2012 Fixed
Description
Execution of the system function USER_NAME() in a login check stored procedure (which is set through the login_procedure database option) could have caused a server crash. This would have occurred when using server-side connection pooling, and has now been fixed.



CR:704464
CR Number:   704464
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3718 09 Apr 2012 Fixed
Description
HTTP headers returned by the NetworkData Java and .NET classes were silently truncated. This has been fixed.



Also, a bound has been placed on the total amount of header data that can be sent in an HTTP request. If a request exceeds the bound, the server will return an HTTP error code and abort the request. This bound is controllable with the header_limit HTTP option. For example, "-x http(header_limit=200000)" will raise the limit to 200000 bytes. The default value is 64000 bytes.



CR:704468
CR Number:   704468
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Linux
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3727 17 Apr 2012 Fixed
12.0.0 2787 17 Apr 2012 Fixed
11.0.1 3024 08 Aug 2013 Fixed
Description
If deadlocks arose between connections using parallel execution plans, the deadlock may not have been detected. Additionally, another connection later contending for the same locks could have caused the server to crash. This has been fixed.



A workaround is to set the option MAX_QUERY_TASKS to 1 for transactions that are known to participate in deadlocks.



CR:704600
CR Number:   704600
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3718 11 Apr 2012 Fixed
Description
In some circumstances, an index may have become corrupted after a DELETE. An index must have had Index Hashing turned on to be affected. This has been fixed.



CR:704609
CR Number:   704609
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Generic
Original Version:   10.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3718 10 Apr 2012 Fixed
Description
If a TLS library could not be found, or an error occurred when loading it, the resulting error message would have contained the system charset name rather than the name of the library. This has been fixed.



CR:704611
CR Number:   704611
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)
12.0.1 3718 10 Apr 2012 Fixed
Description
An index on a binary column could have become corrupt if it contained binary values shorter than the hash size for the table. This has been fixed.



CR:704622
CR Number:   704622
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3639 10 Apr 2012 Fixed
Description
The opcode parameter in the Relay Server error RSE4007 was not logged properly. This has been fixed.



Note: this change is fixed the English resource only.



CR:704649
CR Number:   704649
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3639 12 Apr 2012 Fixed
Description
In a mirroring system, it is possible for a server to be unable to start mirroring because its log does not match the one on its parent. Previously, a message would have been printeded to the console indicating that a log mismatch had occurred, with no further information. This has been corrected so that now there is more information printed to the console of its parent that gives further details.



CR:704654
CR Number:   704654
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3638 12 Apr 2012 Fixed
Description
Creation of SQL Anywhere web services is not permitted on the utility_db. An HTTP request attempting to access the utility_db may have caused the server to crash, rather than being rejected with a "404 'Not Found'" status. This has been fixed.



CR:704775
CR Number:   704775
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3718 12 Apr 2012 Fixed
12.0.1 3718 12 Apr 2012 Fixed
12.0.0 2787 12 Apr 2012 Fixed
Description
When multiple TLS connections were made from a single client application, a small amount of memory would have been leaked for each connection beyond the first. This could also have occurred in the database server, but only when the server made outgoing TLS connections (i.e. for mirroring or to remote servers). This has been fixed.



CR:704801
CR Number:   704801
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3722 20 Apr 2012 Fixed
11.0.1 2800 20 Apr 2012 Fixed
Description
Cursors over SELECT statements referencing proxy tables could have returned errors in the presence of publications for some of the tables. The error depends of how complex the publications are. A typical error would be "assertion failed: 102604 - Error building sub-select". This has been fixed.



CR:704963
CR Number:   704963
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3726 30 Apr 2012 Fixed
Description
If a predicate selectivity estimate was computed using a column histogram and the lookup value was out of bound in the histogram, an index probe was not then used for selectivity estimate. This has been fixed. This also improves the selectivity estimates for a column for which the histogram is out of date or contains incomplete data if an index on that column exists.



CR:704967
CR Number:   704967
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3719 16 Apr 2012 Fixed
Description
With UltraLiteJ for Android, calling Connection.prepareStatement with a null statement parameter would have crashed the application. This has been fixed so that a ULjException with code SQLE_INVALID_PARAMETER is now thrown.



CR:704978
CR Number:   704978
Product Name:   SQL Anywhere
Product Component:   ADO.Net Managed Provider
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
3719 17 Apr 2012 Fixed
12.0.0 2787 17 Apr 2012 Fixed
11.0.1 2795 17 Apr 2012 Fixed
Description
Updating an entity could have returned incorrect values for computed columns.



CR:705368
CR Number:   705368
Product Name:   SQL Anywhere
Product Component:   JDBC Client Library
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3723 20 Apr 2012 Fixed
11.0.1 2801 20 Apr 2012 Fixed
Description
If a JDBC application using the SQL Anywhere JDBC Driver called the "autoGeneratedKeys" overload of Connection.prepareStatement(), Statement.execute() or Statement.executeUpdate() with Statement.NO_GENERATED_KEYS, then the JDBC driver would incorrectly throw a "generated keys not supported" exception. This problem has now been fixed and calling these overloads with Statement.NO_GENERATED_KEYS now simply calls the "non-autoGeneatedKeys" overload.



CR:705529
CR Number:   705529
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3723 20 Apr 2012 Fixed
12.0.0 2788 20 Apr 2012 Fixed
Description
In some cases, 64-bit servers could have crashes when executing queries using TIMESTAMP WITH TIME ZONE values. The 32-bit server was not affected. This has been fixed.



A workaround is either to use regular TIMESTAMP types, or use a 32-bit server.



CR:705543
CR Number:   705543
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3647 19 Apr 2012 Fixed
Description
In a mirroring system, it may have been possible for a copy node to connect to its parent and report that it was connected, but not receive log pages. This has been fixed.



If a copy node lost its host name because of a network problem at any point, the copy node's parent would have been unable to connect to the copy node. This would have appeared in the logs like the copy node connected to the parent without any problems, but the parent would have been unable to connect back. The parent would then drop the connections and the copy node would have made the connection again, causing an infinite cycle that caused the copy node to be unable to stay connected or receive log pages. This has been fixed.



If a copy node tried to connect to its parent, but was unable to resolve the parent's host name during connection due to network problems, the copy node would have connected to the primary and never tried to connect to its parent again. This has been fixed.



CR:705557
CR Number:   705557
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3647 19 Apr 2012 Fixed
Description
In rare timing dependent cases, it was possible for a server that was the parent of a scale out copy node, or the primary in a scale out system, to incorrectly fail requests with a thread deadlock error. It was also possible (but less likely) for the parent or primary to hang. The thread deadlock and hang were more likely when the scale out copy node could connect to the parent or primary, but the parent or primary could not connect back, perhaps due to an incorrect connection string for the copy node server mirror, or due to a firewall issue. This has been fixed so that the server no longer hangs and thread deadlock is much less likely.



CR:705696
CR Number:   705696
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3721 20 Apr 2012 Fixed
Description
With UltraLiteJ for Android, a binary column value with a length greater than or equal to 64 KB would have been truncated when using PreparedStatement.set(int, byte[]) to set the value for an INSERT or UPDATE statement. This has been fixed.



A workaround is to use PreparedStatement.getBlobOutputStream(int) to get an OutputStream object, and use that to write the parameter value.



CR:705697
CR Number:   705697
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Microsoft Windows 2000
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3725 25 Apr 2012 Fixed
Description
Set-Cookie HTTP headers, and sync parameters that set a cookie value to the empty string, will now cause the cookie to be removed, preventing it from being sent to the server in subsequent HTTP requests. Previously, the client would report an error in this case.



CR:705847
CR Number:   705847
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3723 20 Apr 2012 Fixed
Description
UltraLiteJ for Android now supports restartable downloads as documented for C UltraLite.



The following APIs have been added:

Connection.rollbackPartialDownload()

SyncParms.setAdditionalParms( String v )

SyncParms.getAdditionalParms()

SyncParms.setKeepPartialDownload( boolean c )

SyncParms.getKeepPartialDownload()

SyncParms.setResumePartialDownload( boolean c )

SyncParms.getResumePartialDownload()

SyncResult.getPartialDownloadRetained()



CR:705854
CR Number:   705854
Product Name:   UltraLiteJ
Product Component:   Runtime
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3723 23 Apr 2012 Failed
Description
With UltraLiteJ for Android, calling the PreparedStatement.set() method when the PreparedStatement had already been closed would have crashed the application. This has been fixed. Now, a ULjException with code SQLE_ULTRALITE_OBJ_CLOSED is thrown.



CR:705863
CR Number:   705863
Product Name:   SQL Anywhere
Product Component:   DBLIB Client Library
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3651 23 Apr 2012 Fixed
Description
Connections from Linux clients may not have included the EXE value in connection_property( 'AppInfo' ). In particular, this affected applications where the effective user for the application was changed. This has been fixed so that the EXE value is now included in connection_property( 'AppInfo' ) on Linux, even if the effective user is changed.



CR:705997
CR Number:   705997
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3725 25 Apr 2012 Fixed
Description
The Relay Server could have deadlocked after an I/O error with a client while receiving a large http response. The Outbound Enabler would have tried to recover, but would have failed with an RSE3003 error (displayed in the Relay Server log) until the original up-channel failed with error RSE3009. After that, the Outbound Enabler up-channel retry would have resulted in the error RSF13002 being displayed in the Relay Server log over and over until the Relay Server was restarted. New sessions accessing the same backend farm would have resulted in the error RSF14001. This has been fixed by allowing the Relay Server to recover from this deadlock state without causing any Relay Server fatal errors, and the backend service should recover successfully.



CR:706150
CR Number:   706150
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Microsoft Windows
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3754 28 Jun 2012 Fixed
Description
In rare cases, a server may have received an odd ClassNotFoundException when making a Java external environment call, even though the class had previously been successfully loaded. This problem has now been fixed.

Note that this change also greatly improves the performance of loading classes from the database.



CR:706158
CR Number:   706158
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3653 24 Apr 2012 Fixed
Description
A High Availability mirror server could have crashed when starting up or restarting when it was in the "determining mirror role" phase. The primary server must also have had a read-only scale-out copy node connected to it, and a transaction log rename was being performed on the primary server. This has been fixed.



CR:706168
CR Number:   706168
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Microsoft Windows NT
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3725 24 May 2013 Fixed
Description
The MobiLink Server could have crashed when the http network protocol option "collect_network_data" was set to 1 (i.e. -x http(collect_network_data=1) ). This has been fixed.



Note, this option was added by Engineering case 696647.



CR:706174
CR Number:   706174
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)
12.0.1 3653 24 Apr 2012 Fixed
11.0.1 2803 24 Apr 2012 Fixed
Description
If a High Availability partner server encountered a disk full condition, is was possible for both partners to hang. This has been fixed so that the partner that encounters the disk full condition stops immediately. The other server should be able to continue as the primary or take over as the primary. Taking over requires that the primary and mirror were synchronized.



CR:706179
CR Number:   706179
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3653 25 Apr 2012 Fixed
Description
When a server in a mirroring system tried to start up a database as a mirror or copy node, it was possible for the server to receive a transaction log mismatch if there was a problem connecting to the primary or the copy node's parent server. This would have caused the database to shut down, and subsequently the server, if no other databases were running on the server. In this particular case, there was not actually a log mismatch, and so the database would have restarted successfully without replacing database files. The error message printed in the console was: "Transaction log does not match log on mirror partner". This has been fixed.



CR:706183
CR Number:   706183
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3752 21 Jun 2012 Fixed
Description
If a DBRowReader from the MobiLink Server .NET API was used to gather binary data from a fixed length binary column in the consolidated database, then the binary data that was fetched would have had zeroes appended to the result up to the maximum size of the fixed length column. This has been corrected so that zeroes are no longer added to the result.



CR:706371
CR Number:   706371
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3725 25 Apr 2012 Fixed
Description
The SQL Anywhere HTTP server may have crashed if a request was timed-out. The crash would have occurred when a request had timed-out on a host under very high CPU load (the server itself need not have been especially busy). This has been fixed.



CR:706387
CR Number:   706387
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   11.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3726 30 Apr 2012 Fixed
Description
Three new flow control elements have been introduced, allowing the Relay Server to detect potential dangers proactively, and urgently signal the Outbound Enabler to throttle back on pushing data down to the Relay Server in an isolated per client manner. These new elements are:

Per client shared memory consumption

Per client virtual memory consumption

Global shared memory level



This change also introduces a new user control in the Relay Server configuration:

[backend_farm]

max_client_buffer = <memory size>



When the Relay Server consumes more than the "max_client_buffer" amount of virtual memory to buffer server response for a slow reading client, an urgent flow control signal will be sent to the Outbound Enabler to pause reading further server responses for this client. The Relay Server will signal the Outbound Enabler to resume the reading responses for the client when the client has consumed enough of the responses until only half of "max_client_buffer" worth of server responses for the client is left in the Relay Server. The default value of "max_client_buffer" is 1M. The "max_client_buffer" property can be adjusted online and the change takes effect immediately without restarting the Relay Server.



Similarly, per client shared memory is also being monitored, and isolated per client throttling was added. There is no user control for this element of the flow control system, as this element doesn't directly prevent shared memory exhaustion but it prevents deadlocking of the down-channel.



Monitoring of the global shared memory level has also been added, so that flow control can be triggered on any client even if their personal quota has not yet been reached. No new user control has been introduced for this element of the flow control system, but the behavior of the existing "shared_mem" control in the Relay configuration has changed. Previously, this value was used only for specifying the extra amount of shared memory for buffering traffic and state tracking, in addition to the amount implied by the configuration. The property had an effect of an amount equal to its size on the startup allocation. Online adjustment to the value had no effect on the total allocation until the Relay Server is restarted. Now, this property has an effect of an amount three times its value on the startup allocation of shared memory, and is broken down as follows:

- one third for buffering traffic and state tracking where user thought is enough at startup time.

- one third for future online growth of the number of tenants, and backend farm size of the tenants.

- one third as an extra blanket inside the auto calculated shared memory low water mark for triggering flow control.



The sum of these values are pooled together for all functional needs without usage partitioning. The factoring is for calculating the gross startup amount and also users to understand the new implications of online adjustment of this value. Online adjustment to this value still has no effect on the total allocation, but it does change the global shared memory low water mark for triggering flow control. Because of one third factor as a blanket inside the low water mark, users can make adjustments to the flow control behavior without restarting the Relay Server.



Here are some new usages of the shared_mem property in terms of online adjustments:



The administrator doesn't foresee growth in number of tenants and/or their size and so wants to reduce the shared memory low watermark in order to reduce triggering of unnecessary flow control. The shared_mem property can be reduced online. The change doesn't decrease allocation until restart, but it does reduce the blanket amount immediately by an amount equal to the change.



The administrator has seen some of the following after their Relay Server had been running for some time:

Substantial growth in number of tenants

Substantial growth in size of the backend farm

Substantial growth in number of clients

Growth in http response size

Addition of slower clients or slower network to the clients

Upgraded to faster network between RS and OE



and wants to increase the global shared memory low water mark so that flow control kicks sooner to protect against global shared memory exhaustion. This can be done by increasing "shared_mem" online without restarting the Relay Server. The change doesn't increase allocation until restart but it increase the blanket amount immediately by an amount equal to the change.



The "shared_mem" value to now allowed to be bigger than 4G.



This change has extended the existing protocol between the Relay Server and the Outbound Enabler so that upgrading to a new Outbound Enabler is required for this feature. The new Relay Servers and Outbound Enablers are backward compatible with older versions, but flow control cannot take place and so the Relay Server is not protected against memory exhaustion.



Before these changes, the Relay Server can run out of resource due to reaching the hard limit of shared memory or reaching the limit on virtual memory. This could have had different causes, including, but not limited to, an increase in the number of clients or backend farms/servers, http response size, and sustained slow reads from clients. Some exhaustion may have lead to deadlocks and the symptom may not have been fatal as current Relay Servers will resolve the deadlock, but the requests could still have been failed and shared resources were blacked-out during the deadlock period.



sers might experience



CR:706510
CR Number:   706510
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3656 30 Apr 2012 Fixed
11.0.1 2805 30 Apr 2012 Fixed
Description
A server would have leaked memory, and may eventually have run out of memory, if a very large number of Open Client or jConnect secure password connection requests were made. This problem has now been fixed.



CR:706541
CR Number:   706541
Product Name:   MobiLink
Product Component:   ASA Client
Status:   Closed
OS:   Generic
Original Version:   10.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3664 02 May 2012 Fixed
11.0.1 2807 02 May 2012 Fixed
Description
In a mirroring system, if the mirror or a copy node was stopped around the time the primary performed a transaction log operation that required more than one page, the next time the mirror or copy node was started it could have asserted or crashed. The most likely assertion failure error numbers were 100902, 100903 or 100904. This has been fixed.



CR:706554
CR Number:   706554
Product Name:   MobiLink
Product Component:   QAnywhere client
Status:   Closed
OS:   Generic
Original Version:   11.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3726 30 Apr 2012 Fixed
11.0.1 2805 30 Apr 2012 Fixed
Description
The QAnywhere Agent could have failed to start if it could not automatically upgrade the message store in some cases. This problem was introduced by the changes for Engineering case 696917. For 11.0.1.2781 until 2804, the qaagent would have failed to start with message stores created with a qaagent from 11.0.1.2780 and before. For 12.0.1.3711 until 3725, the qaagent would have failed to start with message stores created with a qaagent from 11.0.1.2781 until 2804, or with a qaagent from 12.0.1.3711 and before, or with a qaagent from 12.0.0. This has been fixed.



A workaround for this problem is to recreate the message store using qaagent -si, if that is possible.



CR:706558
CR Number:   706558
Product Name:   SQL Anywhere
Product Component:   ODBC Client Library
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3726 30 Apr 2012 Fixed
Description
When executing a bulk update with SQLExecute, there was a chance that not all rows would have been updated. If the UPDATE statement contained a WHERE clause that did not match any rows, any subsequent rows in the batch would have been ignored. This has been fixed.



CR:706724
CR Number:   706724
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3658 30 Apr 2012 Fixed
11.0.1 2806 30 Apr 2012 Fixed
Description
The server was failing to redirect an HTTP request made to a secure web-service (requiring HTTPS protocol) when the request specified an ipv6 address. This has been fixed.



CR:706774
CR Number:   706774
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   10.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
30 Apr 2012 DEFER
Description
If a client application that had a TLS or HTTPS connection to a server hang, the server itself could also have hung indefinitely. This has been fixed, such connections will now be closed after five minutes.



CR:706812
CR Number:   706812
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   12.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3726 30 Apr 2012 Fixed
Description
The Relay Server Outbound Enabler may have crashed when it was running with a Relay Server farm, and the backend server was under heavy load or busy, then went down or became unresponsive. This problem has been corrected.



CR:706817
CR Number:   706817
Product Name:   MobiLink
Product Component:   Utilities
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3727 01 May 2012 Fixed
Description
The Certificate Creation and Certificate Viewer utilities (createcert and viewcert) will now encode unencrypted RSA private keys using PKCS #1 instead of PKCS #8, if provided a new '-p1' option. This is useful when creating certificates for use with Apache since it expects unencrypted RSA private keys to be encoded using PKCS #1 (SQL Anywhere software always expects private keys to be encoded with PKCS #8). Encrypted keys and ECC keys will continue to be encoded using PKCS #8 regardless of whether the '-p1' option is specified.



CR:706828
CR Number:   706828
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3744 04 Jun 2012 Fixed
11.0.1 2825 04 Jun 2012 Fixed
Description
The MobiLink server now supports bulk upload for sync tables that contain LOBs when the consolidated database is running on an Oracle server. The bulk upload feature would have previously been disabled when a sync table contained LOBs. The number of rows uploaded by each batch is controlled by -s command line option.



Note, the iAS ODBC driver for Oracle must be upgraded to the same EBF level as the MobiLink server when the consolidated database is running on an Oracle server and the synchronization tables contain CLOBs or BLOBs.



CR:706846
CR Number:   706846
Product Name:   MobiLink
Product Component:   Relay Server
Status:   Closed
OS:   Generic
Original Version:   11.0.0
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3728 01 May 2012 Fixed
Description
The Relay Server would have had the client expire the affinity cookie for the case where the Outbound Enabler detected a request specific error and reported the error back to the Relay Server. This didn't cover other error cases where the Relay Server had enough information to also have the client to give up the Relay Server affinity cookie. This fix is to add cookie expiry for those uncovered cases as well. The Relay Server will also response to the client with cookie expiry if the backend server responds to the client with HTTP 400 or higher.



This fix also strengthens validation of the cookie format, improves HTTP status codes, and provides finer HTTP status messages for easier diagnosis.



The responses being changed are summarized in the following table:

New response New response expires cookie? Old response as a record of behavior change

500 Relay server failed creating client traffic record n 500 Relay server error

500 Relay server failed initializing server access n 500 Relay server error

500 Relay server failed writing locking request list n 500 Relay server error

500 Relay server failed creating request n 500 Relay server error

500 Relay server failed initializing request n 500 Relay server error

500 Relay server failed adding initialized request n 500 Relay server error

401 The backend farm client_security property in the

Relay Server configuration disallow this type of client transport y 401 The backend farm rejected this client security

500 Relay server failed initializing backend farm access n 500 Relay server error

400 Bad affinity query y 401 Bad affinity query

400 Bad session id y 401 Bad session id

404 Backend farm is missing from URL y 404 Not found

404 Backend farm not found y 404 Not found

503 The backend farm is currently disabled n 404 The backend farm is currently disabled

400 Backend server encoded in cookie not found y --No change --

400 Bad request with no response from backend server y --No change--





Note, the HTTP status messages will remain generic for the Relay Server for Apache, which may not follow the new status codes. This Relay Server for Apache issue will be addressed as a separate platform dependent issue which is independent to this one.



CR:706876
CR Number:   706876
Product Name:   SQL Anywhere
Product Component:   OLEDB Client Library
Status:   Closed
OS:   Generic
Original Version:   9.0.2
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3727 02 May 2012 Fixed
11.0.1 2806 02 May 2012 Fixed
10.0.1 4327 02 May 2012 Fixed
Description
A Microsoft Data Link Error could have occurred with newer versions of Microsoft software when using the SQL Anywhere OLE DB provider. When the Test Connection button was clicked, the following message would have been displayed when the error occurred:



Test connection failed because not all properties can be set.

Window Handle (BAD VALUE)

Continue with test connection?

[Yes] [No]



The message was informational only and Yes can be clicked. If the credentials and other connection information were correct, the connection succeeded. This problem has been fixed. Instead of returning a NULL window handle to the Microsoft software, the OLE DB Window Handle property is now marked as unsupported, which removes the warning message.



CR:706878
CR Number:   706878
Product Name:   MobiLink
Product Component:   Synchronization Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3761 22 Jun 2012 Fixed
11.0.1 2831 22 Jun 2012 Fixed
Description
The MobiLink server could have crashed when a TIMESTAMP column was fetched from Oracle using the .NET-ODBC bridge. This has been fixed.



CR:706892
CR Number:   706892
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)
12.0.1 3661 01 May 2012 Fixed
Description
There are many reasons for a database, that is a partner in a High Availability system or a copy node, to be restarted. In several cases, no reason for a restart was logged to the console. This has been fixed so that a message indicating the reason for a restart is now logged to the console.



CR:707002
CR Number:   707002
Product Name:   SQL Anywhere
Product Component:   Server
Status:   Closed
OS:   Generic
Original Version:   12.0.1
Fixed Version Build Resolution Date Closure Code (If Appropriate)
12.0.1 3729 03 May 2012 Fixed
11.0.1 2808 03 May 2012 Fixed
Description
The request for the graphical plan of a statement would have caused the server to crash if the statement contained an IN predicate and the list consisted of only host variables and an In List algorithm was chosen for it. This has been fixed.





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

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

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

ReadASADB适用场景

各种误操作:

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

本工具的应用场景:

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