Following is a list of performance enhancements introduced in version 12.0.0 for which there are no user-visible changes other than performance improvement.
Improvements to locking when updating primary rows Updating a non-key column in a primary row and modifying foreign rows referring to that row no longer interfere with each other. For example, in the sample database, a sales_order row can be added while the corresponding customer address is being updated, without one operation having to wait on the other. See sa_locks system procedure and Objects that can be locked.
Reduced locking at isolation levels 2 and 3 Read locks on individual rows are no longer obtained when a table is locked in share mode (LOCK TABLE...IN SHARE MODE statement). This can result in reduced locking overhead at isolation levels 2 and 3.
Improved request prioritization SQL Anywhere 12 has been enhanced to boost the priority of I/0 bound requests, which results in better utilization of hardware resources.
New cost model SQL Anywhere 12 includes a CPU cost model that more accurately estimates query execution costs on modern hardware. This behavior may cause changes to access plans for some queries.
Enhancement to queries embedded in user-defined functions SQL queries embedded in user-defined functions can now be in-lined by the query optimizer, which avoids a procedure context switch with each invocation and provides the optimizer with new degrees of freedom with which to optimize the statement.
Improvements when converting expressions to different data types Improvements have been made to the evaluation rules the database server uses when converting an expression to a different data type. The new evaluation rules make the conversion more efficient to execute.
Discuss this page in DocCommentXchange.
|Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0|