SAP Knowledge Base Article - Preview

2087878 - Targeted CR List for ASE 15.0.2 IR


The purpose of this KBA is to help SAP customers obtain a general idea of potential fixed situations in future Adaptive Server Enterprise (ASE) EBF/SP or PL releases. Please be sure to read the Disclaimer below.

If the EBF/SP has been released, check the CR list and coverletter at the

Disclaimer: This document lists the targeted (not committed) release dates and the targeted fixed CR list for each release. Please be aware that the purpose of this posting is solely to provide you, our customers with estimated release dates and targeted CR lists. SAP does not commit to releasing on the specified dates or to including the CR fixes in the said release. While every effort will be made to meet the said targets, changes can occur at any time. It is also possible (although unlikely) that SAP may decide not to release an EBF/SP that was previously scheduled for release. 

CR number



The message "nrpacket: recv, Connection timed out" does not include spid.


1.sso_role is not able to perform all the activities of a sa_role in the 3 stored procedures.(sp_addremotelogin,sp_dropremotelogin,sp_modifylogin) 2.The error message printed due to an absense of appropiate role is also ambiguous.


Stored procedures using temporary tables created outisde of the procedure are renormalized each time a temporary table referenced by the procedure gets dropped and recreated. For heavily loaded systems it may be a reason for sysprocedures contention. Command line trace flag -T299 may be used to improve the performance : stored procedures will no longer be renormalized automatically but only if a runtime layout of the temporaray table does not match the layout of the table used to compile the stored procedure. Trace 299 should be used as a command line option.


When auditing cmdtext, use of sp_addlogin and sp_password result in cleartext passwords in the sybsecurity sysaudits extrainfo column. Any sso_role can see these, therefore the information is not secure.


Changing srvnetname entry in sysservers for the XP Server has no effect. ASE Ignores srvnetname when launching the XP server and always defaults to < servername > _XP (uppercase).


Sybase Central ASE Plug-in does not display row count and space usage information for each individual table under Tables folder.


A 18033 error, "You cannot drop user because user 'sa' owns thresholds in database, may be reported, when a dbo tries to drop an added user 'sa' of a mixed-log-date database.


In ASE error log $SYBASE environnement variable is not logged at startup.


Calling attrib_notify after creating database for load and before loading it may cause error 930 being raised.


The stored procedure sp_helpdb incorrectly shows the database status as being "offline, online for standby_access" when the database had been brought online in standby access mode but it has subsequently had one or more transaction logs loaded into it.


sp_changedbowner does not change the owner (suid) of all thresholds that are associated with a database at the same time it changes the owner of the database.


When an All Pages Locking table that has a non-unique clustered index with the option "ignore duplicate rows" set is converted to a Data Only Locking table, ASE does not incorrectly remove this option from Sysindexes despite having set on the option "allow duplicate rows". This results in incorrect SP_HELP output.


Add a new command SET SWITCH to provide a mechanims for setting local and serverwide switches to control Adaptive Server Enterprise behavior. Prior to this, DBCC TRACEON() was the only command which could be used for this. The new command provides more flexibility and functionality over the DBCC interface. For example it prevents users from accidently enabling the wrong switch.


The utilities charset and langinstall do not function with Adaptive Server Enterprise when LDAP and/or SSL are configured.


The Adaptive Server Enterprise 'perfmon' system integration of Sybase monitor counters into Windows performance monitor now takes account of dynamic changes to ASE system memory configuration


When doing aggregation on a bit column and no rows qualify, the result is a random number instead of a 0.


Add support in Connect dialog for both ASE Plug-in and Interactive SQL to connect to SSL-enabled ASEs. ASE Plug-in can also configure a local ASE to use SSL. (Note SSL is a licensed feature.)


Sybase counters do not appear in Windows Performance Monitor if running in a terminal server session


Implement runtime compilation for stored procedure statements referencing variables or temporary tables.


Show indexes, primary keys and unique constraints in one Indexes folder.


Warning message: "Connecting to a Replication Server that supports a lower LTL version. Features that are not supported by the lower LTL version may cause the RepAgent to shutdown. Set the 'skip unsupported features' configuration option to prevent shutdown." will not be printed when RepAgent configuration parameter 'skip unsupported features' is set to true.


When an index is created in parallel using the CREATE INDEX command together with the option "with statistics using 0 values", new distribution/histogram statistics of default steps will be written/overwritten to the system catalog.


When one session executes stored procedure opening a cursor the second session may perform a drop of an index used by open cursor statement. As a result the execution of the stored procedure by the first session fails with the error 8419: "Could not find index descriptor for objid ..., indid ... in dbid ...." This is incorrect because the stored procedure should detect schema change caused by index drop and perform the recompilation.


This feature introduces a new table sysoptions and a new stored procedure sp_options. Sysoptions holds data representing optimizer related session level options settings for all sessions and sp_options is a wrapper over sysoptions. Schema for sysoptions is: Name Type Attributes Description spid int Process id name varchar (100) Name of the option category varchar (100) Category to which the option belongs. currentsetting varchar (100) NULL Current setting of the option. defaultsetting varchar (100) NULL Default setting of the option. scope int Bitmap representing scope of option. Syntax of sp_options is: sp_options [[show|help [, < option_name > | < category_name > |null [, dflt|non_dflt|null [, < spid > ] ] ] ]] For more details on sysoptions and sp_options please consult user documentation.


A new command SET SWITCH is introduced to provide a mechanism to (un)set local traceflags.


ASE will allow modulo arithmetic on floating point and numeric values.


If a database is marked "suspect", DROP DATABASE will fail. To drop the database successfully, the user must use dbcc dbrepair().


The fix displays percentage completion for dbcc gam().


ASE optimizer is not able to perform statistics interpolation for char and varchar datatypes when server's default sort order is different from binary. As consequence some queries may be executed using suboptimal plans.


User having permission to execute sp_modifystats can run the SP on any table without checking the permissions of executing user on the target table


Enhanced sp_who output to include the name of the temporary database used by the spid.


New feature: A configuration option 'start xp server during boot' has been added. This option lets user to select whether XP server to be started while booting Adaptive server.


Configuring default network packet size greater than 65535 can cause TDS protocol connections.


The booting server does not respect the -d < master_device_name > and -r < master_mirror_name > names provided on the command line. Instead, it uses its own internally stored names.


Feature request for a way to manually set/update a timestamp value (more or less according the way < identity insert > is implemented. This would be used in warm-standby replication environments, where transactions are forwarded by RepServer as SQL-statements. Due to the current implementation of timestamp, this will lead to differences in the timestamp values between the primary side and the secondary.


A new option, 'with dbid = < number > ' has been added to 'CREATE DATABASE' command, to allow the database administrator to specify database id when creating a new database.


Add Resource Limits feature in ASEPlugin.


There are limited password complexity checks when a new password is specified or a password is changed. The password expiration warning interval is not configurable. A new login created is allowed to operate with the created password.


DBCC LOGTRANSFER with a context eauql to 100 does not display to the client columns xold_ts and xnew_ts for data modification log records on tables marked for replication.


In rare circumstances error 5854 "Configuration Error: Cannot write out file ' < file name > ' due to system error ' < system error message > '" could be unable to report correctly the file name of the configuration file specifying the message "Invalid pointer param number 2, pointer value 0x00000000" instead of the default configuration file name.


The SP_TEMPDB SHOW, DB command will display the list of all user created temporary databases also. The SP_TEMPDB WHO, < DB_name > will also display application name through which Login is associated with the mentioned < DB_name > .


The error 8204 is raised when an invalid system table id ( < 100) is passed to the built-in function object_name().


The execution of the DBCC CHECKALLOC, DBCC TABLEALLOC, DBCC TEXTALLOC and DBCC INDEXALLOC commands with the FIX option may result in removing OAM entries that show 0 pages allocated and 0 pages used. Similarly the OAM chain may be extended should there be a need for this.


The message "CT-LIBRARY error: ct_results(): protocol specific layer: external error: There is a tds protocol error. An invalid datatype was received." is raised when executing a SELECT on a view containing a UNION clause with SELECT's having a NULL, like SELECT col=NULL, on each side of the UNION.


Feature Request: When possible, optimizer should consider row count limits, set using "set rowcount", in costing


The stored procedures SP_SYSMON and SP_MONITORCONFIG may display incorrect values for the "Active" and "Max Ever Used Since Boot" fields for "Open Object Usage", "Open Index Usage" and other parameter when executed in a multi-engine ASE environment.


sp_autoformat now also formats datatypes integer, numeric, money, date/time, float/real, and also formats user-defined datatypes and NULL values correctly.


The message "current process infected with 11 in ns__exec_stmt" is printed in the errorlog together with a stacktrace containing the modules 'call_ns_exec', 'ns_execute' and 'ns__exec_stmt' when using internal JDBC with the CallableStatement.setNull() methode passing in a java.sql.Types.INTEGER datatype as second param.


SQL text capture may be turned off in the ASE when the Monitor Server terminates. This will cause collection of data for the monProcessSQLText and monSysSQLText MDA tables to stop.


The -I switch for srvbuild, srvbuildres and sqlloc on Unix platforms does not work and the interfaces file in the default location is always used.


Progress message for sp_dbcc_deletehistory should be changed because the current message is inconsistent with the behavior.


New feature: "top n" clause for select, update, delete.


A 5888 configuration error, " Two Named Caches with the 'cache status' defined as 'default data cache' is not allowed" may be reported in case of case-insensitive server during boot or while verifying the entries of a configuration file using the sp_configure.


A network endpoint (entry in interfaces file) can have multiple server names (or alias'es). There is an consistany while printing server name in some of error messages. This fix is to resolve so that server name displayed in the error message is always the one used by user in his commands.


Add 'cis connect timeout' feature. The OCS fix 430150 checked in to Conn 15.0 ESD #7 is needed for the timeout to work correctly. Traceflag 11234 has been added to allow the behaviour of ignoring connection failures during compile-time.


Feature Request: Provide a mechanism to force the full allocation of a mirror device on file systems. This is to prevent problems associated with Unix sparse / lazy file allocation. A new "clear = TRUE" option has been added to the disk mirror command to address this.


The error 2601, 'Attempt to insert duplicate key' or 1205, '...encountered a deadlock situation. ...' can be raised when the stored procedure sp_addlogin is executed concurrently from different sessions.


The monIOQueue monitoring table incorrectly assigned IOs by the system to the 'User Data' row since the table only split IOs by 'User Data' or 'User Log'. System IOs are now assigned to 'System'


The 'ascinserts' property of a table, that earlier used to be set by a call to dbcc tune(), can now be set via stored procedure 'sp_chgattribute'.


Mount/Umount Database improvements


When the SELECT * is expanded while storing the text of a stored procedure, identifiers consisting of multiple parts will be stored in syscomments using bracketed identifiers. For example a columnname like < colname_part1 part2 > is stored like [colname_part1 part2]. The same will happen for table-names consisting of multiple parts.


The message "current process infected with 11" in the module 'oj_syboj_markojonclause' may be reported in the error log when executing a SELECT with invalid cyclic outerjoin.


If a user does not supply password when invoking DDLGen from command line, he will be prompted to enter the password from the console.


CIS: When UPDATE STATISTICS with sampling is issued against a proxy table, an incorrect message 2727, "Cannot find index ' '" is raised.


The fix for CR 274800 and CR 287252 was incomplete. As a result an isolation level 0 query involving TEXT/IMAGE data, could hang or fail with the message 'illegal TDS token received'.


When a new remote server is added with sp_addserver, it will be created with the status field set to 'no timeouts' as this can help RPC performance in some circumstances. Existing remote servers in the sysservers table will not be changed.


Improper parameter setup for messagess 6503/6506/6507/6516/6519/6530/6542 in mount.c


The fix displays percentage completion for create, alter, drop and load database commands.


INDEX: Occasionally a covered index is not used for query involving partitioned table


Under some circumstances, on a heavily-loaded multi-engine system and multiple clients running java (activated through "enable java" configuration parameter), the message "current process infected with 11" or "current process infected with 10", together with a stack trace in function Opinvokevirtual or Opinvokestatic or Opinvokespecial may be reported in the errorlog.


Query using a view with big number of aggregates may be executed slowly if more than one worktable is necessary to resolve aggregates from the view.


The default value of configuration parameter 'dtm detach timeout period' has been modified to 5 minutes. Any external transaction such as XA transaction will be rolled back, if in detached state, for more than 5 minutes. A value of 0 will disable external transaction timeout.


ASE server was locking login account when number of unsuccessful login attempts reached value of "maximum failed logins". This CR, per customer request, is to generate an audit record when this event occurs.


When executing system procedures that have non-ANSI comparisons such as "if @var = NULL", some procedures may show unexpected behaviour if 'ansinull' is set 'on' in the session from which the procedures are executed.


Performance Improvements in DDLGen for Users, Groups and Roles. Calls to sp_helprotect have been removed which were the bottleneck in performance.


sp_engine can_offline reports output only for engines which cannot be brought offline due to outstanding 'ct-lib or java sockets or Q' connections.


Backupserver API compression module (with the syntax "compress:: < compression-level > ::" allows user to specify the same file name for multiple stripes. The resulting dump is not loadable. The new native compression syntax in 12.5.2 (the "with compression = " clause) and higher does not have this problem.


sp_dbcc_summaryreport displays milliseconds in the end time but not in the start time


Provide a new T-SQL built-in, INDEX_NAME(), to get the name of an index, given the ID of the index and the IDs of the database and the object on which it is defined. A number of MDA tables return the database ID, object ID and index ID trio. This built-in would simplify the process of analysing these MDA tables for index usage.


Occasionally, the message "current process infected with 11" in the module 'omni_adjust_eops' together with a stack trace which includes the modules 'omni_opt_select' and 'omni_code_gen_estep' may be reported in the error log if there is an invalid subtraction between two DATETIME columns with some subqueries involved


The DBCC command PRSQLCACHE will print the whole text of the statement cached as opposed to its first 255 characters only.


Feature request to have dbcc tune(cpuaffinity) command report failure rather than silently fail on platforms that don't support affinity.


The stored procedure sp_dboption shows an undocumented and unused option 'disable alias access'. It has been removed.


A user who gets locked out of ASE due to failed logins will not get 'maximum failed logins' times to relogin after the account has been unlocked.


CIS: INSERT into a proxy table with SMALLMONEY datatype mapped to a ASIQ backend and quickpass disabled might result in ASIQ conversion error -157.


The installmontables script has been included within installmaster. There is no longer any need to run installmontables to get the latest Monitoring Table definitions. The installmontables script is still provided as a template for retrieving monitoring data remotely via RPC.


CIS: Support SELECT INTO EXISTING for the tables with the same datatypes but smaller column length from the source column


1 > In stored procedure 'modifylogin' , a new value 'kerberos' for option 'authenticate with', is added. A user can specify authentication mechanism as 'kerberos' as follows, sp_modifylogin 'user1', 'authenticate with','KERBEROS' 2 > a user can get authenticated against specified mechanism, even if configuration options 'use security services','unified login required' are set to 1.


CIS: Executing sp_addlogin command may result in Msg 102 error when a user-defined role with password has been activated.


Message 2843, "The dynamic statement '* < name > ' could not be found. This may be due to insufficient metadata descriptors for the number of tables and procedures in use by Adaptive Server. Configure the serverwide 'number of open objects' parameter to accommodate more objects." is raised when a procedure is executed using a name like "* < name > ".


CIS: Query hangs or runs poorly with join against proxy table column. Costing for certain join order might have been underestimated.


CIS: SELECT COUNT(*) FROM an EXTERNAL FILE without any search arguments gives timeslice errors for large files.


A CREATE TABLE statement using a constant MS in the DEFAULT clause for a column succeeds without raising the expected message "Msg. 128, The name 'MS' is illegal in this context. Only constants, constant expressions, or variables allowed here. Column names are illegal.".


Improve the performance of object statistics collection when 'per object statistics' and 'object lockwait timing' are enabled.


Migration fails during setup when source server has a password and target does not


When an external authentication mechanism is configured, and the user is automatically created in ASE with the aid of sp_maplogin, an audit event for LOGIN COMMAND (103) is not generated.


The syslogins status bit 0x1 is not set for short passwords.


New feature request to enable the definition of a global login trigger to be executed by every user at login time, before the personal login script is fired. It can be defined using the stored procedure sp_modifylogin with a NULL login name and the option 'login script' or by calling the new procedure sp_logintrigger directly.


Two new columns, 'unusedpgcnt' and 'oampagecnt' are added into systabstats, to represent the number of un-used pages and the number of oam pages in the object represented by this systabstats row.


For an infected process, the signal names are not printed in the error log.


Few new columns were added to optdiag output for dumping and loading of simulated statistics.


Error message reported by sp_audit stored procedure corrected to read ' < loginname > ' is not a valid login name.


An unexpected 208 error, " < object > not found. Specify owner.objectname or use sp_help to check whether the object exists (sp_help may produce lots of output)" maybe be raised when executing a stored procedure that creates inside that object and it has been executed and recompiled concurrently by several sessions. Under the same circumstances sometimes a 3703 error is reported following by one or several 216 errors and resulting in the termination of the session executing that stored procedure.


A user account set to use LDAP authentication exclusively using 'sp_modifylogin loginname, "authenticate with", LDAP' fails over to ASE syslogins authentication when "enable ldap user auth" = 1 and either the password is wrong, or the LDAP server is unavailable.


When dropping a role, any external login mappings it might have, are left orphan in sysattributes.


The error msg 11294 "The remote server < server name > class < class id > is not supported by UPDATE STATISTICS in import mode..." should be displayed with Level 10 instead of 16 severity.


Query assigning local variable may return incorrect result if the same local variable is used in the constant expression being a part of OR clause. An example of such statement would be : select @var = value from tab where (@var is NULL and col = value ) OR (expression)


sp_monitorconfig 'permission cache entries' reports an active value greater than the configured value on the system. This misreporting occurs even on single engine cases without runtime re-configuration of permission cache entries.


The stored procedure sp_tables does not show any user table but those owned by DBO if the executor has SA role but it is not the SA user.


Update ASE Plug-in to Sybase Central 4.3 and to co-exist with other Sybase Central Plug-ins under Sybase Central 4.3.


There are 3 issues with the conments list below: 1. The comment at the beginning of sp_helptext is wrong. It states that 18406 is a problem with "allow select on syscomments.text". However, 18406 is raise when sp_hidetext was run for the object NOT when "allow select on syscomments.text" is set to 0. Note that the quoted text is also incorrect; there is no "allow" in the configuration argument. 2. There is a next comment: /* ** If the configuration parameter 'allow select on syscomments.text' is set to ** 0, then the user can use sp_helptext ONLY in the following cases ** ** 1. if the user has sa_role ** 2. if the object is a system stored procedure ** 3. if the object is owned by the user ** */ It should include dbo as well because dbo or dbo alias could also run sp_helptext. 3. The text for error 18180 says: "Configuration Parameter 'allow select on syscomments.text' is set to 0. Only the object owner or user with sa_role can run sp_helptext on this object." Again there should be no "allow" in the parameter name and the message should includde dbo as well.


Message 141, 'A SELECT statement that assigns a value to a variable must not be combined with data-retrieval operations.' is raised when the result of derived table expression is assigned to a local variable. With fix the behavior is changed and it's now allowed to do so.


A 624 error may be reported in case a database is dumped to an existing file and ASE crashes during dump operation.


In rare circumstances, a 9539 error, "Insufficient amount of memory per worker process to execute this parallel query. Increase the value of the configuration parameter 'memory per worker process'." may be reported in a server with a low number of worker processes and a high number of user connections.


The status bit 0x0001 in syslogins was set when users had short or null passwords, but the bit is no longer used. The internal upgrade process will reset it..


The sp_helprotect stored procedure does not display DELETE STATISTICS when this command is granted.


When UPDATE STATISTICS is run on a proxy table that has more than 1 index and the remote statistics is not available, error message 11290 “Distribution statistics for column ' < column name > ' in index ' < index name > ' is unavailable or incomplete in the remote server.” shows incorrect < index name > against the < column name > .


CIS: When a table is marked for replication with sp_setreptable, updating the table with proxy text data results in Msg 605 error.


System application contexts can be overwritten if issued in the same statement.


The sp_sysmon application monitor report does not report data for processes or applications.


The error (warning) message 11290 "Distribution statistics for column ' < column name > ' in index ' < index name > ' is unavailable or incomplete in the remote server. UPDATE STATISTICS will not run in import mode." is displayed if UPDATE STATISTICS on proxy table detects no entries in the remote systems statistics catalogs. This warning message will no longer be displayed.


Built-in audit_event_name() returns a non-NULL string for supported audit events only and returns NULL for unsupported events.


Socket migration is vulnerable to interruption by signals


Feature request for a way to determine when a locked login became locked


A query assigning and using the same variable in the qualification may fail with errors or produce incorrect result.


A database that once had replicated tables or stored procedures incorrectly continues to appear as such. This can have different effects, for example, that DBCC CHECKTABLE continues to unnecessarily check for replication information.


Remove the limit of 1024 elements in the IN() clause.


The message "current process (0x1c001c) infected with 11" together with a stacktrace involving module "compare_value" may be seen when a range query involves NULL date, time or bit values.


Historical Server README File incorectly states the ASE server name is a column in the output tables


Improve housekeeper garbage collection rate for index pages under aggressive GC option.


When UPDATE STATISTICS is run on proxy table that maps to a remote view, the command fails with some diagnostic errors in the ASE error log file.


An error "Incorrect syntax near ')'." is reported with sp_helpdb if wildcards are used and a single match is returned.


CIS: ct_command call may stack trace with Signal 11 at ct__api_new_sendcmd or Memory allocation failure message.


A transaction will be incorrectly rolled back when rolling back to a save point that follows a save point to which a rollback has already been performed.


A Schedule's Between time option is not being saved when selected.


Maintain high-water mark for monSysStatement.MemUsageKB to reflect the max. amount of procedure cache memory allocated by each individual statement.


UPDATE STATISTICS on proxy table may fail with error 10353 "You must have the following role(s) to execute this command/procedure: 'sa_role'".


Command text auditing was erroneously capturing the SQL text of stored procedures during upgrade.


A 694 error, "An attempt was made to read logical page ... The page was not read successfully. You may have a device problem or an operating system problem", may be erroneously reported in cases where prefetch of pages is done on a server that has many concurrent I/Os that are active.


New feature that allows DBCC CHECKSTORAGE to be run on archive databases.


A new column ErrorStatus has been added to monSysStatement, indicating the error status upon completion of statement execution.


Feature request to make the timeslice error message less cryptic.


Move binaries under shared/lib folder to ASEP/lib folder. Remove About ASE Plugin Dialog as the same information is displayed in ASE Plugin properties.


Various Enhancements of performance of TEMPDB especially to avoid writing buffers to disk as part of checkpoint, minimal logging of TEMPDB activity, separate ULC for tempdb. Please see what's new for the detailed of these enhancements.


The command LOAD WITH VERIFY[ONLY] is not supported on cross platform load, however it was allowed causing all sort of invalid verification errors.


PERMISSIONS Exec (@sql_text) inside store procedure not working


If a very large transaction is rolled back then "KILL < spid > WITH STATUSONLY" may report negative values.


1) sp_encryption system stored procedure uses tempdb excessively. 2) Running sp_encryption when there are no keys in the database produces no output. 3) sp_encryption enhancements to display keyname, tablename, column name and key details.


Enhance the LOAD WITH HEADERONLY command to display disk fragment information


In rare circumstances on a heavily-loaded multi-engine system, when java is enabled, 10707 errors may be reported in an errorlog while deserializing java objects due to serialVersionUID mismatch between stream and local class.


UPDATE STATISTICS on proxy table that contains numeric or decimal datatytpes may fail with Error Message 11291, Level 11, State 3: “Histogram(step) statistics for colidarray < hex colidarray > is unavailable or incomplete in the remote server.” together with diagnostic error in ASE errorlog stating “Query in fetch_histogram() has error in fetched col = (varbinary column). Expect datum length ...”.


In rare circumstances, error 100024 (as reported by dbcc checkstorage) may remain unfixed by either dbcc checalloc or dbcc tablealloc with fix option.


ASE may experience a hang under heavy disk i/o conditions due to lost delayed I/O requests.


Unregister of ASEP will remove its icon from Sybase Central frame.


Auditinit support on Linix on EMT64/AMD64 platform.


The message "current process infected with 11" in the module 'pre_alttab' may be reported in the error log when executing the 'ALTER TABLE' command for a table having an 'auto identity' column and if the command needs a data copy. This may happen if the session level 'quoted_identifier' option is on or if the table name length is greater than 28 characters.


When range predicates are used on columns involved in join predicates then the join estimations may not be accurate. This may affect join orders in complex queries. In the query below, before the fix, the row cound estimate of the result was 1892, but after the correction, the estimate of 187 rows is much closer to the actual join result of 184 rows. select count(*) from t1, t2 where a1=b1 and a1 < 1893 go ----------- 184 ==================== Lava Operator Tree ==================== Emit (VA = 5) r:1 er:1 cpu: 0 / ScalarAgg Count (VA = 4) r:1 er:1 cpu: 0 / MergeJoin Inner Join (VA = 3) r:184 er:187 / \ Sort IndexScan (VA = 1) i1 r:185 er:187 (VA = 2) l:6 el:6 r:184 er:187 p:0 ep:0 l:2 el:4 cpu: 0 bufct: 24 p:0 ep:4 / TableScan t1 (VA = 0) r:185 er:187 l:36 el:36 p:0 ep:36 ============================================================


LDAP allows users to get authenticated and there are check_login inconsistencies when set_access_acct is invalid and anonymous binds are turned off in the LDAP server.


Under rare circumstances, a timeslice error in module 'des__do_unlink' may be reported in the error log when a session tries to drop a dynamic statement. The module 'lwp_drop' will also be reported in the stack trace.


libtcl.cfg fails to load if there are embedded comments in the file.


Enhance DBCC CHECKTABLE to give a better estimate of table fragmentation for DATA_ONLY_LOCKED tables.


'Invalid pointer param number' message is appended to Error Msg 10331, when 'create proc' is run by a login with insufficient permissions, on an IBM AIX 64 bit ASE FBO dataserver.


sp_sysmon may show you negative values in "Other Causes" of "Task Context Switches Due To:" section if "disable disk mirroring" configuration parameter is 0.


The previous restriction on IDENTITY columns created by the select/into statement, which limited the datatype to NUMERIC, has been lifted. With this change, identity columns may be of type numeric, int, smallint or tinyint. All other aspects of managing the identity value remain the same as in previous releases. New syntax allowed: select columnname=IDENTITY(int|smallint|tinyint|integer) ... into tablename... Previous behavior, which created a new NUMERIC column with specified precision, remains unchanged.


Under command line trace flag 1138, implement mechanism to reduce fragmentation of DATA_ONLY_LOCKED tables.


The error 17230,"Server '%s', Procedure 'sp_optimal_text_space', Line 103: You must be the System Administrator (SA) or the Database Owner (dbo) to execute this procedure." will be incorrectly raised if the user is an alias to the DBO.


Some of the memory data items in monitor client library (e.g. SMC_NAME_MEM_CODE_SIZE, SMC_NAME_MEM_KERNEL_STRUCT_SIZE) always return a zero value.


The syconfig.exe doesn't use user specified system database device path.


Setting the 'short ltl keywords' configuration option of replication agent to true, then replication agent will send short ltl keywords of transaction log language to the replication server.


New LDAPUA feature that sends additonal password related infromation to the audit log, when a login tries to bind to the LDAP server.


Typo in an informational message when running Sybmigrate. "Migrate database data is not allow because migrate server data wasn't selected during the setup session." Should be 'allowed' instead of 'allow'


The table in the second argument to sp_monitorconfig will not be created if it does not exist.


XFS: Update to filename in proxy tables mapped to file system directories using the recursion option may fail with error message Msg 11277 when a constant string is concantenated to the filename.


ASE running on Linux kernel 2.6 and above on amd64 platform encounters I/O performance degradation. This is because librtkaio support has been withdrawn on these linux kernel versions and by default POSIX AIO is used. Enable trace flag 1649 to use Linux Kernel Asynchronous IO.


Dump database on tape using "with compression = compress_level" option works fine but load fails with a read error.


When using jconnect sp_mda locks sysconfigure table to get the ASE version , so when sp_sysmon is run it hangs till the lock is released. Fix is to get the ASE version from the global variable @@version_as_integer and save the current isolation level and set it back once the sp_mda is executed. This way we dont interfere with ASE locks and system tables.


An INSERT-SELECT statement can corrupt the inserted rows in the target table when the target table is a Data Only Locked table and the SELECT contains a UNION ALL first, followed by one or more UNION statements grouped together using ().


Feature request for an option to sp_configure that would display all the configurations that were set to a non-default value


Flush all data to the Sybmon log file whenver the 'log off' command is executed.


ASE incorrectly allows identifiers that start with a pound sign (#) to be used as column names. All column-names defined in a CREATE TABLE, CREATE VIEW statement and in the column-list of a derived table expression are now checked against the rules for valid identifiers as stated in the standard documentation.


If complete deadlock information which gives deadlock chains and details is not needed, customer can set 'print deadlock information' to value 2. This will print only 1 line summary of Deadlock giving only Deadlock ID.


New Feature - Sybase Central ASE Plug-in supports restoration of tables and partitions from 15.0.2


In rare circumstances , an error message "Internal error, FDP API, fdp_get_memory() :Failed to allocate xxxxx bytes" may be logged in the ASE errorlog when sp_configure is executed.


Feature request: improve time to open Stored Procedures Folder within Sybase Central ASE plugin


Feature request to support a secondary server in the case of DN lookup URL


DBCC USEDEXTENTS has been enhanced to also report extent allocations on device fragments which do not reference any segments.


DDLGen did not use to accept white spaces after the parameter types i.e. ddlgen -Usa [ no space after -U was allowed]. This did not match the standards of other applications like isql which used to accept spaces. This fix solves this issue, and users can specify white spaces after the parameter types i.e. ddlgen -U sa [now works!!!]


If recovery suspect granularity is set for page level and if a data-only locked table btree insert or delete log record is undone and if that page is found to be corrupted, subsequent page fetches will fail with Error 605: Severity: 21: State 1.


The stored procedure 'sp_cacheconfig' of Adaptive Server sometimes does not list the buffer pools for an available cache in sorted order of pool size.


CIS: In some circumstance, syntax error 102 will be reported when OR and like clauses coexist for a query involving a view on a proxy table


A query with ORDER BY clause which assigns local variable from the view which has UNION ALL statement may fail to execute correctly. Stack trace may be logged in the errorlog file. Following modules may be reported in the stack trace: execute(), exec_eop(), run().


For logins ======= Delete: Can delete any logins except 'sa' and 'probe'. Cut: Can not cut 'sa' and 'probe' and also those are bound by at least one user, with a SSO role is a must for this action. For roles: ======= Delete: Can not delete the following system roles, with a SSO role is a must for this action. DTM_TM_ROLE HA_ROLE NAVIGATOR_ROLE OPER_ROLE REPLICATION_ROLE SA_ROLE SSO_ROLE SYBASE_TS_ROLE MON_ROLE WEBSERVICES_ROLE JS_ADMIN_ROLE JS_CLIENT_ROLE JS_USER_ROLE MESSAGING_ROLE Cut: Same condition as Delete needs.


New built-in function pssinfo( < spid > , ' < pss field > ') that returns several fields of the process structure.


A 102 error, "Incorrect syntax near 'ý'." , may be unexpectedly reported when using "batch updates" (sending several dynamic sql statement executions in the same batch) and the statement that was already prepared had to be recompiled because, for example, the underlying table schema changed.


The Job Scheduler task may die unexpectedly if it is unable to handle an exception raised by Adaptive Server Enterprise. A message like "- > JS: js__execute; run [CHECK WAKEUP]" together with module name such as "terminate_process(), close_network() ... jobscheduler()" may be seen in the errorlog.


Enable end users configure WebServices logging level dynamically via stored procedure "SP_WEBSERVICES".


Customer reported that after applying EBF 12338 to ASE 12.5.2 release, Sybase Central ASE Plug-in stopped displaying Java Objects folder. The same problem seemed to persist after upgrading to 12.5.3. If such problem is encountered, it has advised to update ASE Plug-in to at least 12.5.4, which does not exhibit the error. (12.5.4 ASE Plug-in verified: Sybase Central ASE Plug-in/12.5.4/GA Build 1/S/1.4/ase1254dev//Thu Mar 2 17:00:13 PST 2006)


New feature request to set a maximum wait time limit to SHUTDOWN. The new syntax is SHUTDOWN [WITH WAIT [ = "xx:xx:xx" ] | WITH NOWAIT ]


The message 'Legal optimizer criteria must be INT' is printed when running some 'SET' commands.


When upgrading to 15.0 from 12.5.x, if the configured 'procedure cache size' is the default, upgrade may fail due to Error 701. To work around this, ensure that the procedure cache size is at least 12000.


If a SQL update statement uses an assignment of an encrypted column into a T/SQL local variable or parameter (@variable), Adaptive Server may return Msg 15445: "The datatype of the ciphertext data (NUMERIC) is incorrect for column ''."


sub-optimal performance may result when a query is executed in execute immediate mode.


Backupserver might delete shared memory with id 0 when dump command fails.


The error 1945 "Cannot create unique index 'ix1' on table 't'. The table partition condition and the specified index keys make it impossible to enforce index uniqueness across partitions." will be reported only when the user tries to create a unique local index; the issue doesn't apply to a unique global index.


When a transaction is aborted due to excessive stack usage, ASE prints only diagnostics related to offending task. It doesn't produce diagnostics regarding query context available before abort. This CR addresses problem by printing information on stored procedure nesting level and open transactions under new traceflag.


The message 4408, "The query and the views in it exceed the limit of 50 tables." is raised with severity 19. This severity is too high and should be 16.


The Sysprocesses.time_blocked column unexpectedly shows a NULL value for server tasks being blocked by a detached distributed transaction.


The warning message 9827 reading "Control page < PageNumber > upgrade for partition number < PartitionNumber > for object ID < ObjectId > in database < DatabaseName > may not have been done correctly ..." may wrongly be reported under the previous object section for DBCC checkalloc.


Msg 12802, "Invalid partition number < number > . Valid partition number is a positive integer." is raised when the UPDATE PARTITION STATISTICS command is executed. The partition number is omitted but instead the WITH SAMPLING < number > clause is used.


A 14108 error "Could not find partition descriptor for objid 8, indid 255, ptnid 8 in dbid < value > ." followed by the message "ASE is terminating this process." may be raised when using datalength() built-in function on TEXT/IMAGE columns within a TRIGGER. The stack trace being reported in the error log will show modules 'LeRun', 'textsize', 'gettxtpage' and 'open_partition'.


Unexpected truncated data maybe inserted into a table when the INSERT or UPDATE statement is executed inside a stored procedure and a change in the underlying tables used by the stored procedure caused more than one internal renormalizations.


Dump with native compression to tape fails with error number 22. This has been fixed for the NT and Linux platforms.


Permissions for operations (decrypt, create/alter/drop encryption key) did not display properly in ASE Plugin.


A cursor declared on a select statement with a where clause that searches an encrypted column using a literal value may fail to find qualifying rows. The failure occurs if the column being searched is encrypted by a key created with init_vector NULL.


When using jconnect, if the query includes the db name, the dbname is not include in the TDSROWFMT2 response.


Downgrade from 1253a and then running sp_bindrule, sp_bindefault, etc causes stack trace because of the extra columns added in syscolumns for encrypted columns.


Encrypted columns of type CHAR, VARCHAR, BINARY and VARBINARY that are specified as nullable fail to decrypt using ALTER TABLE .. MODIFY .. DECRYPT.


Using External File Support (XFS) to read from a file larger than 2GB that has been mapped to a proxy table can result in errors (for example, "Failed to seek to offset -NNNNNNNNNN").


System stored procedures like sp_tables and sp_stored_procedures do not allocate sufficient space for the input paramater @table_name.


Java-based ASE Plugin interface does not provide a way for user with expired password to update their password.


The error or warning messages do not display when enable/disable an existing invalid trigger name on a table.


When a named cache is configured too small for current demands, a message is posted in the log and the associated spid may keep looping , waiting for free buffers. The spid cannot be killed.


SLOW bcp into heap tables i.e. all cases except APL tables with clustered index, will behave like FAST bcp and do minimally logged updates when the db option 'bulk copy' is turned on.


Database 'sybsystemprocs' has a recommended size as well as a required size. The preupgrade utility should show both those sizes, instead of producing an error when it is below the required size and subsequently showing a warning when it is below the recommended size.


upgrading dataserver using sqlupgrade generates a new RUN_server file with wrong pagesize z2k


Replication Agent stored procedures have been modified to format the output to the client based on the length of the data being displayed.


A sub-optimal plan is generated if table alias is unspecified with a column name in SELECT list but specified with the same column name in ORDER BY clause


After you run sp_engine "online" and an ASE engine starts up, sp_sysmon always reports 0% spinlock contention.


When multiple sessions, at least one of which is a cursor scan, are doing DMLs within transactions, inconsistent results may sometimes be obtained, with serializable inserts not blocking even though a serializable cursor scan may be active in that range of keys.


ASE should raise a warning when running on 64-bit AIX system configured to run on a 32-bit kernel.


Enhance sp_displaylogin to accept wildcard expressions to list logins matching the pattern specified. Allow use of a suid in addition to a login name.


LDAPUA bind and search requests do not have configurable retries for failed operatations. There is also no configurable maximum number of ldapua descriptors per engine and no configurable ldapua error message and average time logging interval.


1) There are limited password complexity checks when a new password is specified or a password is changed.


On platforms other than Windows and MacOS, printing messages to console is now made non-blocking in order to prevent the server from potentially getting hanged whenever console output is blocked. This behaviour can be disabled using traceflag 4082.


ASE does not shut down XP Server during a shutdown with nowait


Conversion of smallint quantities into varchars could lead to wrong results.


For numeric parameters, Replication Agent will print a meaningful error message indicating the correct range of possible values for a given configuration parameter.


An 16130, SVRLIB error, "Procedure < procedure name > expects parameter < @parameter_name > , which was not supplied" maybe be reported by an Open Server application when Adaptive Server is executing the procedure as a Remote Procedure Call (RPC) requested by a client application and the value for the parameter was sent by the application as a NULL value.


When a user who schedules a job has a different user name on the target server than he has on the Job Scheduler server, the job does not run because the login to the target server fails at runtime.


On a heavily-loaded system, the message "The Java VM associated with process < spid > is abnormally terminated" in the jvm module may be reported in the errorlog even though the client performing the java work terminates normally.


An INSERT based on a SELECT using a derived table expression in the FROM clause and an ORDER BY clause can generate wrong results. Only the rows from the first UNION ALL side in the derived table expression will be inserted.


pre-15 XML schema with a "length" attribute instead of a "maxLength" attribute


While an ASE reserved connection is in use, ASE cpu usage may be seen to rise to 100%


"ddlgen" is not generating the correct sql for certain check constraints


In rare case, ddlgen db is not compatible with dump/load


sp_sysmon Disk I/O section uses udalloc_calls to capture counts of I/O requests, which includes both synchronous and asynchronous I/O requests. However, when we count completed I/Os, we do it using total_dpoll_completed_aios, thus only counting asynchronous completes. This is documented in CR 144252. Customer is requesting that we change sysmon to either include both synchronous and asynch completes in the Completed output, or that we break them out into a section for synchronous and a section or asynch I/Os so we get a more accurate read on disk activity. Customer is running Adaptive Server Enterprise/12.5.3/EBF 12417 ONE-OFF ESD#1/P/HP9000-879/HP-UX 11.0/ase1253/1899/64-bit/FBO/Tue Feb 22 19:21:47 2005 . This problem is not version- or platform-specific, as it is written in the source for sp_sysmon_diskio, again as documented in CR 144252.


When there are many transactions to be redone or undone, a timeslice error may be reported during the recovery of a database.


If sqlserver was configed and setup during installation, installer will write the default connection profiles of ASEP.


Scheduled jobs that run with the property ‘no_output_log’ will not have an entry created in the js_output table. But even though this property was set, the messages were logged into the js_output table and were viewable from the log file, after executing the job.


Modified schedule is not saved when the repeating interval value is not explicitly selected by user in Schedule Properties window.


Change to scheduled job owner from properties window is not saved.


Simulated statistics stored in sysstatistics is not upgraded to format understood by Adaptive Server version 15.0, during upgrade to 15.0 from prev-15.0 installation.


INSERT query with UNION ALL may incorrectly insert too many rows if the target table is also used as the source table in one of the union sides.


ASE simply displays an error message returned by the LDAP Server without explaining the reason(s) for the error.


If ASE is set to start automatically as a service under Windows, and the ASE license is expired, Windows startup may be seriously delayed


Japanese hankaku-katakana conversion from EUCJIS to SJIS corrupts a TDS packet if CS_RES_NOSTRIPBLANKS is turned ON.


Added support for nocase sortorder for Chinese and Japanese character sets. Under the nocase sortorder, ASCII and accented characters are sorted in case-insensitive manner, CJK characters are sorted in Unicode binary order. Please run sp_helpsort to get the sort order id.


The message "infected with 11 in ssql_reparse together with a stacktrace containing the modules 's_reinstall_lwp_tree', 's_getTreeOrPlan' and 'exec_proc' is written to the errorlog when executing a stored procedure with a name which starts with '*' using the execute immediate feature.


Java objects may be unable to open sockets on NT and recieve the exception: Cannot create socket: Too many open files


Error 852 "Command Failed: Invalid request to move ' < num > ' buffers from the ' < poolsize > 'K pool of the ' < cachename > ' cache to the ' < poolsize > 'K pool. Source pool only contains '%ld' buffers. Retry the command specifying fewer buffers.", when raised,shows incorrect/garbled parameters.


Simply add one more check box "Show agent attributes and operations" under "Enable Unified Agent (UA) related features" check box and the default is unchecked. This way we hide the Attributes and Operations panels by default.


Update the Meta Data stored procedures used by ODBC, OLE DB and jConnect drivers with upto date fixes. Following issues addressed: jConnect: System stored procedures like sp_tables and sp_stored_procedures do not allocate sufficient space for the input paramater @table_name. [CR 406276] jConnect: DatabaseMetaData.geProcedures() does not return procedures owned by non-sa_role users if the current login holds sa_role prileges. [CR 394097] jConnect: Request to support Savepoint feature as described in the JDBC 3.0 specifications. [CR 350092] ODBC Driver by Sybase: Installing the Driver Meta Data SQL scripts will leave the Adaptive Server with 'allow updates' enabled. [CR 406722] ODBC Driver by Sybase: System stored procedures like sp_tables and sp_stored_procedures do not allocate sufficient space for the input paramater @table_name. [CR 406276] OLE DB Provider by Sybase: Installing the Driver Meta Data SQL scripts will leave the Adaptive Server with 'allow updates' enabled. [CR 406722] OLE DB Provider by Sybase: System stored procedures like sp_tables and sp_stored_procedures do not allocate sufficient space for the input paramater @table_name. [CR 406276]


Selecting a column from a view containing unions of proxy tables may cause the front end isql to crash in core dump and segmentation fault.


SELECT INTO (existing table) remote columns from remote TEXT/IMAGE source may result in Msg 280/3651/557 when the source columns comprise of more than one table from the same remote server.


The process and locks folders has been modified to identify normal, blocked, and blocking processes via color codes (green, red, and yellow) respectively. Also the process folder is now split into two tabs normal & blocked.


For the ASE plug-in in Sybase Central, the database usage properties no longer display logsegment utlization.


The message "current process ... infected with 11" in module "bufdlink" may be reported in the error log if the SYBSYSTEMDB system database has been bound to a user named cache. The module "bufpindirty" will also be reported in the stack trace.


When ASE boots under graced license, it is not able to checkout expirable license for optional features despite possession of valid license. This CR fixes problem.


List of existing schedules dislayed when creating a scheduled job may display two schedules with the same name. If either is selected, the first schedule will be attached to the scheduled job.


When performing a disk init specifying a virtual device number of 127 and a size of 32 GB, an error message 5115 is reported and the disk init operation fails during initialization.


to solve the issue which the buffer manager cannot provide any more buffers when documents with large no. of namespace prefixes.


RepAgent gives error 9209: RepAgent(8): Missing datarow in TEXT/IMAGE insert log record. Transaction log may be corrupt. when TEXT/IMAGE is inserted from XFS proxy table.


The stored procedure sp_addumpdevice unconditioanlly sets the device size to 5 MB when initializing an archive database device.


Statement cache remains on inspite of configuring 'set EXPORT_OPTIONS ON' and 'set statement_cache off' in a login script.


A connection that uses encrypted passwords retains a lock on syslogins while waiting for the client application to send the password causing concurrency problems.


Repeated execution of "sp_ldapadmin suspend/activate" command intermingled with creation of new user login sessions can lead to hung login attempts.


Selecting max with merge join and backward scan may result in wrong result.


If during a cursor FETCH a severe error such as runtime conversion error (overflow, divide by zero, format error, etc.) OR subquery error like 512 OR a deadlock is hit, then a subsequent cursor FETCH may fail with error 803 resulting in the session being killed with a stack trace reported in the error log showing modules 'curs_fetch' and 'bufkeep'. With this fix, the default behaviour is to end the cursor scan. However, if Adaptive Server is started with the 589 trace flag, then the cursor is implicitly closed instead.


XPSERVER on Windows: XPserver will be killed by the Service Control Manager if it is sent an 'interrogate' event by utilities like "IBM Director" or sc.exe. Event viewer will show "error 7016: The Sybase XPServer_JEK2K1253_XP service has reported an invalid current state 0."


The message "current process infected with 11" in the module 'bufdlink' together with a stack trace that includes 'bufpindirty' may be reported in the error log when running DBCC CHECKALLOC on a database that has tables and/or indexes that are bound to a cache other than the 'default data cache' and the configuration parameter 'number of large I/O buffers' is too small.


Error 2513 may occur when dbcc catalogcheck is run on a database where columns are encrypted using more than one key from a different database.


CIS: Setting text or image to NULL on a proxy column from an external client may cause 'remote i/o' hang on the spid.


Multi-engine Adaptive Server on non-NT systems may go into an infinite loop, when client tries to connect to one of the ports added with "sp_listener" after bringing engine(s) online anytime after listener was started. Message "nopen: accept, Socket operation on non-socket" may be reported in the error log.


CIS: The CREATE PROXY_TABLE command on an ASE with Allpages lock scheme will fail with error msg 1767: "Number of variable length columns exceeds limit of 254 for allpage locked tables. CREATE TABLE for ' < proxy table name > ' failed." if the remote table contains more than 254 variable columns.


CIS: SELECT DISTINCT with a subquery might return duplicate rows if the backend server class is not defined correctly.


An error message "File < filename > already exists. Can not open tracefile." will be reported if "SET TRACEFILE < filename > " command is issued on an existing file.


Add new builtin reserve_identity("table_name", size), allowing a process to grab a group of identity values reserved for that process.


Adaptive Server Enterprise erroneously reports that license usage is in overdraft when an uncounted license is served from a License Server.


A client prepare statement including multiple SQL commands may not be completley executed if at least one of SQL commands is using TEXT or IMAGE host variables and the statement cache is active on the server.


Update the installmaster script to address the following issues: jConnect: The column names used to describe ResultSet MetaData do not conform to the JDBC specifications. [CR 419579] sqlupgrade: Errors encountered when installing system stored procedures in Japanese environment. [CR 418053] jConnect: Request to support getDatabaseMajorVersion(), getDatabaseMinorVersion(), getJDBCMajorVersion() and getJDBCMinorVersion() functions on the DatabaseMetaData class. [CR 416759]


In the "Login Password Configuration" tab for the server properties dialog, the "disallow simple passwords" and "expire login" binary options in configuration list can be assigned values. With this change, these 2 binary options are no longer editable.


Query with union in view using DOL worktable for view materialization may sometimes return incorrect results.


An undetected deadlock may occur when the database option 'ddl-in-tran' is active and session 1 executes DDL and/or DML commands while session 2 is interested in printing the execution plan for session 1 through SP_SHOWPLAN.


Request for an option to return the data in encrypted form for the encrypted columns - in case the caller does not have decrypt permission.


CIS: TSQL outer join query on proxy tables may return wrong result when part of the query (such as the search clause) is not forwarded by CIS to the remote for execution.


The statistics displayed when SET STATISTICS IO is enabled will incorrectly be null on any table that has a trigger.


The message 'current process infected with 11' in the module db_ekey_in_use maybe reported in the errorlog when dropping a database if there exists an archive database that has not been loaded yet.


The error 3208, "Unexpected end of file while reading beginning of dump" will be raised when an archive database device is unavailable.


If an execute insensitive scrollable cursor is executed again, error 3806 "Both the READ ONLY and the FOR UPDATE options have been specified for cursor" might be raised.


The "quiesce database" status for temporary databases, as shown by the sp_helpdb stored procedure, may unexpectedly survive a server re-start.


When ASE dataserver is configured for High Availability on Sun Cluster, it may not release database devices during failover if PID of dataserver process(es) is not removed.


On Solaris, if ASE is configured for HighAvailability on SunCluster, the HA agent ase_monitor will initiate failover if it fails to run various SQL commands as part of thorough probe, though the error is a transient one such as no space in tempdb.


While running dbcc upgrade_object() and a syntax error in the source text is found, Msg. 11031 is raised. At the same time the error 'Invalid pointer param number 4, pointer value 0x3' .*s invalid pointer param number 6, pointer value 0x2' is also raised.


The message "current process...infected with 11" may be reported in module "collocate" when a session runs a subquery whose execution requires a work table to be sorted in parallel by ASE. The modules "psort_producer", "subst" and "subconst" will be reported also in the error log.


sp_helpdevice displays devices ordered by device name, and shows free space for unused devices.


A connection using LDAP authentication retains a lock on syslogins while waiting for the LDAP server to respond, which causes sp_addlogin to hang


The stored procedure sp_who "spid" will return 0 rows when the parameter spid belongs to a user with negative suid.


If one element of the xml document contains attribute and text child, then the stack trace would be thrown out randomly.


CIS: If at compile time, a remote server's capabilities are already available, then avoid connecting to the remote server during compilation.


CIS: A stacktrace along with the message "NULL aghead pointer in var_expression()" might be observed in some SELECT INTO statements with join clauses involving local and remote tables.


Queries with materialized view may use more worktables in ASE 12.5 release than in previous releases. In some cases the query which executed fine in ASE 12.0 may no longer execute in ASE 12.5 failing with error 251, "Unable to allocate ancillary table for query optimization. Maximum number of tables in a query (14) exceeded."


When a primary key or a unique declarative clustered constraints for an All Pages Locking table are dropped, ASE does not incorrectly remove the status value "Index supports primary key/unique declarative constraint" from Sysindexes. This results in incorrect SP_HELP output.


An archive database device incorrectly needs read/write permissions to be initialized.


CIS only uses quoted identifiers around column name in select to remote server. CIS should also use quoted identifiers around the table name.


Query with a subquery flattened to the exists join and executed with special or strategy (showplan output showing "Using N Matching Index Scans") may sometimes return the same row multiple times making the total result set bigger than expected.


When a user generates DDL for a table, partition names are generated even when they are are not user-defined and are system generated.


If data length expansion possibly occurs due to character set conversion from client to server, bulk copying data to a replicated text column with DB-Lib bulk copy routines may cause error 7105.


If the value of the 'max SQL text monitored' configuration parameter is greater than 16384 bytes and a n application submits a SQL batch larger than 16384 bytes, a query on the monProcessSQLText Monitoring Table may generate a 632 error.


Failure attaching to shared memory when Monitor Server & ASE are started from different Terminal Server sessions.


Enable LOAD TRANSACTION on an archive database.


The message "current process ... infected with 11" may be reported in the error log in module "ind_dbinfologspacevalid" when the LCT_ADMIN built-in is executed with option "logsegment_freepages" on a temporary database that has not fully recovered yet. The modules "th_lct_admin" and "th__logsegment_freepages" will also be reported in the stack trace.


Resize all of the unstandard icons to standard icons


Launch Sybase Infomaker installer directly, rather than distribute the Infomaker installer as a zip file that requires the user to unzip and install it separately.


In rare circumstances, on a multi-engine system, the message "current process infected with 11" together with a stack trace in ubffree may be reported in the error log while loading java classes.


An ASE stacktrace containing the modules ubo_object_from_slot and mda_get_kpid_by_spid would be generated with the error message "An internal memory management error has occured." if the monitoring table monLocks was queried with a where clause involving a search on SPID and the SPID value was 0 or negative, e.g. "select * from monLocks where SPID = 0"


Values in the column TotalSizeKB for the monCachedObject monitoring table were not always correctly calculated.


Previously Connect dialog's Server name drop down list would not update after user changed the LDAP setting (Settings button - > LDAP page). This has been corrected.


ClassCastException is encountered when Table Editor is opened.


Built-in attrib_valid returns failure on action modify & delete, irrespective of attribute-value passed.


Attempt to start SySAM License Server using "" script produces the following error: "Vendor daemon can't talk to lmgrd (Cannot read data from license server (-16,287:22 "Invalid argument"))".


CIS: Use of SET ROWCOUNT on query that results in CIS to forward partial command to remote server may return wrong result.


Clustered indices for APL tables were being costed more expensively than non-clustered index scans when sargs were being applied to data rows. For the case of non-clustered indices, the benefit of sargs being evaluated in the access layer was costed correctly, but this was not the case for clustered indices. The end result was that a clustered index scan was not usually chosen when strong filtering predicates were applied after a weak limiting scan. The end result is that for APL tables a slower non-clustered index scan could be chosen over a faster clustered index scan.


The message "ubo_object_from_slot:Pss Invalid slot id 0" followed by the message "current process ... infected with 11" in module "lock__print_deadlockchain" may be reported in the error log when ASE encounters a deadlock situation and the configuration parameter "print deadlock information" is set or the "deadlock pipe active" MDA option is in use. The modules "pss_getunkept_pss" and "ubo_object_from_slot" will also be reported in the stack trace.


Signal handling for Mac OS X server process was not resetting signal mask, resulting in a 'frozen server' after first signal (SIGSEGV, SIGBUS, etc.) was encountered. No recovery of this situation was possible, other than killing the process and restarting the server.


Resource Governor fails to kill process that exceed their allotted time when running in parallel


Previously DDLGen did not use to generate "If exists" statement, this used to generate sql exceptions when someone used to run ddlgen output against a server where objects already existed. This fix now adds "if/exists clause", and the object if already exists is dropped, before creating a new definition.


Under certain circumstrances, When ASE is configured to use JVM( ‘enable java’ set to 1) error ‘Memory allocation request failed because of insufficient memory in Jvm Shared Class’ appears in errorlog. ASE may get infected with SIGSEGV and throws stack trace in VMClassLoader::Destroy.


Enhance the alter table utility to avoid taking table locks on system catalogs.


Connection time averages for LDAPUA are printed under traceflag(3637) instead of (3635).


drop login/sp_droplogin does not drop local login mappings in sysattributes table, due to which those mappings in the table have references to non-existent users.


GRANT ALL command inserts rows of Dump Database and Dump Transaction actions into sysprotects table.


In rare circumstances on 64-bit Linux AMD, Linux Itanium and Sun Solaris Opertron, the message "Arithmetic overflow occurred" may be erroneously reported when using 'Approximate Numeric Datatypes'.


Users without the js_admin_role will see an error and not be able to open the Scheduled Jobs, Jobs, or Schedules folder if the Show All Users menu item is selected from the corresponding menu.


ASE internal clock is not updated before the recovery processing is completed for all databases.


When a database fails recovery because one or more of its devices do not start correctly, or when there are I/O errors on a device such that a database becomes unusable, DROP DATABASE will not drop that database.


Invalid dbid passed to built ins will report error 913 with higher severity.


bcp wizard usibility improvments


Adaptive Server Enterprise running on the Windows operating system does not correctly handle device file names when those names (or directory paths) contain characters outside of the standard ASCII range 32-126, depending on the local character set in use. CR 429253 fixes this issue when used in conjunction with isql -J which disables character set conversion between isql and ASE.


When printing messages, the preupgrade utility refers to the new version's names for configuration variables. If a config has been renamed, this causes it to print the name of a config that does not exist in the old installation.


sp_chgattribute does not allow you to set identity_burn_max to 0 leading to first identity value of 2.


Error message 5018, "Caution: You have set up this database to include space on disk < n > for both data and the transaction log." may be raised in error during CREATE, ALTER or LOAD DATABASE if the database has any disk fragments allocated on virtual devices between 248 and 255.


Backup Server process dies on HP Tru64 when a child sybmultbuf process dies or is killed.


Sybase Central ASE Plug-in from 12.5.4 ESD#2 supports load transaction for archive databases.


A convenient method for an administrator to look at logged-in spids, to determine which authentication mechanism (Kerberos, PAM, LDAP, ASE) was used for the login is needed.


Update sqldbgr script to reflect the latest updates to shared directory sctructure.


Using the SET option PROC_OUTPUT_PARAMS to switch off the output parameters being returned by the outermost stored procedure, will cause incorrect results when multiple stored procedures are nested and returning output parameters.


DDLGen does not generate the following attributes when generating DDL for a cache - partition number and cache replacement policy.


When updating a record with timestamp column by "update .. where current of cursor_name" and the timestamp column is in the SELECT list, 594 error is raised.


WHen large buffer pools are used, then there may be a tendency to be overoptimistic on the PIO savings from large IOs, even though there is a weak data page cluster ratio for the index. The correction is that more PIO will be estimated due to a poor data page cluster ratio that indicates that data pages are not well clustered for the index scan.


modify sp_text_load_index to display progress messages


An INSERT/DELETE/UPDATE trigger interrupted by Ctrl C may not qualify the expected number of rows from the INSERTED/DELETED table and the associated INSERT/DELETE/UPDATE statement may not be rolled back accordingly.


Adaptive Server Enterprise running on the Windows operating system may encounter 'invalid handle exception' during shutdown.


Deadlocks on system catalogs due to two parallel tablescans on syscolumns. These deadlocks are exposed because the table locks are removed as part of the project.


An unexpected 557 error "The cursor ' < cursor name > ' can not be used as it could not be found. It is possible that either it was not declared or it is not available in the current context." may be raised or the message "current process infected with 11" in the module 'execudf' may be reported in the errorlog if a JAVA user defined function that uses the internal JDBC ASE driver is executed a high number of times (more than 30000) by the same connection and at the same time one or more cursors are active on that particular connection.


On 64-bit sytems sometimes the message "current process infected with 10" in the module 'des_getval' together with a stack trace which includes the modules 'd_procbuf' and 'exec_dbcc' maybe be reported in the errorlog when DBCC PROCBUF command is executed.


An UPDATE or DELETE query with the outer join updating the inner table should not be executed. Error 7720 "Update/Delete from a table which is the inner table of an outerjoin is not allowed. Command aborted." should be raised.


In XML diagnostic outputs alias names would be printed along with table names.


When sending an RPC using cis rpc handling, if the rpc name length is greater than 30 bytes, an internal protocol error would result. This has been fixed in ASE 15.0.2


The monOpenObjectActivity MDA table did not correctly distinguish the occurrence of table scans from clustered index usage on tables containing clustered indexes. Clustered index usage and table scans are now reported correctly.


The following platforms are unable to set the minimum value for sp_ldapadmin set_max_ldapua_native_threads attribute to less than fifteen: Sun Solaris, IBM AIX, HPUX, Windows, Tru64.


A sub-optimal plan with unnecessary I/Os may be chosen for some MIN/MAX queries with non-equiSARGs (eg: column < constant) on the aggregate column. Use switch 390 to enable the fix.


CIS: In some scenarios, query with a LIKE clause and builtin functions may prevent some search conditions to be sent to the remote server.


An error 9972, "An error 247 occurred while inserting the results into the dbcc_counters table" together with error message 247 "Arithmetic overflow during implicit conversion of INT value '576002052' to a SMALLINT field" in error log will be reported when running "dbcc checkstorage" if installdbccdb script is not installed in master database.


On MAC, ASE may start with incorrect IP address due to race condition at startup.


DBCC checkalloc may report transient 2529, 7989 and 2540 errors after DBCC checkcatalog( < DBNAME > , fixall) has been used to correct Sysindexes descrepancies.


The error 864 "Command Failed: Cannot bind object ... to cache because you have active level0 scans on the target object. Retry the command after terminating the scans." will be incorrectly reported when trying to unbind an object from a named cache in a read-only database.


Using existing RUN file with garbadge content to do upgrade, sqlupgrade core dump


Only create BCPWizIdentityPage if the table has identity column.


Set the fieldTerminatorTextField and rowTerminatorTextField with default values


Query with a subquery accessing the fake system table sysprocesses may fail with the error message 691 "Encountered invalid logical page '0' while accessing object '32' in database '1'. This is an internal system error. Please contact Sybase Technical Support." if the query is exectued in the parallel mode.


Job Scheduler Job Copy menu item is displayed but does nothing.


When executing a SELECT statement via DYNAMIC SQL Adaptive Server could send incorrect or inaccurate information in the column format descriptions for the user type id field. This only happens the first time that the formats are sent after the DYNAMIC PREPARE command, subsequent DYNAMIC EXECUTE commands return the correct format information.


ASEPlugin did not consider the way length is evaluated for national character datatype.


Enable DIRECT IO for block devices under trace flag 1648 on Linux.


When ASE resource governor is configured for transaction elapsed time resource limit, stored procedure whose execution time exceed the configured limit may hit TDS protocol errors instead of the expected 11005 error reading "Transaction's running time exceeded limit of < TimeLimit > ."


Previously in 15.0.1 ASE Plugin, trigger did not have Print or Find/Replace on its context menu. This has been corrected.


Previously ASE Plug-in did not select a server after connecting to the server. This sometimes lead to confusion, esepcially when there are other connected servers already. This has been fixed.


DDLGen does not generate 'sp_cachestrategy' statements for tables, indexes and constraints when 'mru' and 'prefetch' are set to off.


The LOAD DATABASE ... WITH HEADERONLY command, when executed on an archive database, has been enhanced to display the compression level and format, ansi version, block size, internal backup server buffer size, number of stripes and creation date of the first stripe.


When ASE resource governor is configured for transaction elapsed time resource limit, an 11005 error may be unexpectedly raised after a transaction has been explicitly rolled back.


The error message, "SybSQLException: The definition for column 'int' must include a datatype." may occasionally be reported by the Table Editor when creating a table. This occurs when the column name is edited and the definition is then saved.


Previously ASE Plug-in displays Platform and OS information for a Unified-Agent-monitored server differently depending on whether the server is connected or not. This has been changed so that ASE Plug-in prefers the info obtained from UA - platform and OS information from UA is more relevent to the server host.


After an alter table to decrypt a column, rows remain in sysprotects that describe decrypt access to that column.


All processes in the server can become blocked when auditing is enabled and the sybsecurity database is quiesced.


When 'enable literal autoparam' and 'statement cache' are on, subsequent run of a select statement with a literal followed immediately by a correlation name in the select list may get assertion failure in sqtcache.c.


ASE running on Linux kernel 2.6 and above on linuxia32, linuxia64 and ibmplinux platforms encounters I/O performance degradation. This is because librtkaio support has been withdrawn on these linux kernel versions and by default POSIX AIO is used. Enable trace flag 1649 to use Linux Kernel Asynchronous IO.


When execute charindex with Unicode character U&'\+01d160' and 'enable unicode normalization' is on, we may get wrong result.


Unattended installations of servers using setup response files or sybatch resource files do not complete if the hostname begins with a numeric character even if the actual supplied name begins with a legal alpha character.


UI: Use Icons to improve the look


Under some circumstances the execution of a stored procedure when a procedure contains statement like CREATE INDEX, UPDATE STATISTICS or DROP TABLE followed by a SELECT statement from a view in a database different than the current database.


The message "timeslice -501, current process infected" together with a stack trace which includes different modules like 'memalloc', 'make_orstruct', 'parscpy' or 'q_or_find' may be reported in the error log when a query with a long IN list is executed.


For internal use only: For winx64 platform, it has diffrent exception process. adding EX_CLEANUP before return is the resolution for it. Just adding the missed EX_CLEANUP which may cause problems.


When selecting data from an unprefixed table that is created in a stored procedure, if the same table exists owned by DBO, the data will be incorrectly read from the DBO owned table.


For displaying statistics, the wizard didn't check whether the 'optdiag' utility version and the server version match or not, causing only error output in the resulting window. This has been fixed so that only matching 'optdiag' utility can be used for displaying statistics.


Feature request to enhance monOpenPartitionActivity and monOpenObjectActivity to print partition-level and object-level housekeeper garbage collection queue statistics


The error 803, "Unable to place buffer '0xnnnnnn' from cache 'default data cache' holding logical page ' < pgno > ' in sdes for object 'sysprotects' - either there is no room in sdes or buffer already in requested slot." followed by a process termination will happen when granting access to a group that contains more than 11 users that already have the same access granted with grant option.


sp_displaylogin does not show the password as 'expired', when the password expires due to password policy option 'expire login'.


Feature to retrieve ddl for all triggers for a table without table definition. DDLGen generates ddl for all triggers of a table. The value to be supplied in the name parameter '-N' would be < dbName > . < tableOwner > . < tableName > . < triggerName > . Please note that if DDL is to be generated for all triggers of a table then in the above -N parameter '%' should be used for trigger name. Also note that -D parameter cannot be used when generating DDL for all triggers of a table.


Allow a database dump of the master database to be loaded into an archive database.


Bulk copying data using the BCP utility into proxy tables mapped to DirectConnect for Oracle (DCO) version 12.6 and above may not return any error messages to the BCP client when a constraint violation error is encountered while inserting data into the Oracle database.


DBCC CHECKALLOC or TABLEALLOC may deallocate a log page considered to be the last log page in the dbtable. Enhance the fix option of these DBCCs to remove the reference to lastlogbp in the dbtable if this page gets deallocated because it is no longer the root page for Syslogs.


When a temporary object fails to drop, the temporary object is queued for HK Chores system process to retry the drop.


ubffree gets infected with 11 during a disk init operation when attempting to free a memory fragment.


Usage of local variables in execute immediate may sometimes not work as expected for varchar and char variables : result of expressions involving local variables may be trunacted.


The options exported in a login trigger were not available in the process unless the server was started with trace flag 4073. From now any exportable option set or unset in a login trigger will take effect in the login process without the need of that trace flag. To avoid this nchange in behaviour the user can execute SET EXPORT_OPTIONS OFF inside the login trigger itself.


Updated the installmaster with the latest jConnect Driver's MDA SQL.


Column in a result set returned by the stored procedure sp_statistics are all varchar datatypes. Previously, some of the columns returned were integers.


A session that runs a SELECT-INTO-UNION query that uses the identity() builtin may hit error 8221 "Couldn't find the identity column for object < value > " and hang forever while undoing the creation of the given target table.


Error displayed regarding "Space available in the log segment has fallen critically" when installing Job Scheduler.


CIS: A 191 error, "Some part of your SQL statement is nested too deeply", may be reported when a query containing a very large number of conditions in the where clause is executed in quickpass mode


Enable LDAP User Authentication feature on HPIA 64bit platform.


ASE running on Windows may output the following message to the log at startup: "KERNEL structure not padded correctly - size = < nnnn > ". This is an internal matter with no consequence for the safe running of the server.


A new command "create manifest_file" allows creation of a manifest file without the requirement to either unmount or quiesce one or more databases.


An 840 error, "Device ' < devname > '(with physical name ' < physname > ', and virtual device number -1) has not been correctly activated at startup time", will be reported when trying to access an archive database at boot time, when one of the stripe devices has been physically deleted.


The initial directory and file name in Export Server Groups dialog used to be empty if there was no last-browsed directory. The initial directory is now either $SYBASE or $SYBROOT (in that order.)


The warning, "Invalid compression format found in device 'filename'. The compression will be ignored." is incorrectly reported when loading an uncompressed database dump that was generated using a 12.5.4 IR Backup Server.


New feature to display the ammount of compression memory recommended to run DBCC CHECKSTORAGE in the stored procedures sp_plan_dbccdb and sp_dbcc_evaluatedb.


When moving a server to a different server group, if the operation failed, ASEP didn't give any reason. ASEP now shows an error message when the server is still connected, or the server already exists in the target server group.


The sqlsrvr.pdb file is now shipped with ASE on the winx64 platform. sqldbgr.pdb is used to debug ASE issues.


If "exec_procedure" audit option is turned on and you run a stored procedure with a parameter containing double-byte characters over 255 bytes, the audit records may be split in the middle of one of double-byte characters.


Scheduled jobs with the properties 'no_job_header' and 'no_sql_batching' set may issue an incorrect job command. Job execution may fail with unexpected results and in some cases the error message, "Line 1, character 8: Incorrect syntax with 'select'" may be reported and logged in the log. In addition, a job may be further processed even if the errors are reported.


Add to installmaster a new system stored procedure (sp_spaceusage) to capture and report the space usage characteristics, and an estimated measure of fragmentation, for tables, indices, and transaction log of a database.


Initialization of kernel asynchronous I/O context through io_setup() fails with an error EAGAIN while bringing an engine online.


Under some rare circumstances if builtins are run in parallel with some DDLs, there is a possibility of deadlock.


On 32-bit Linux platform while extending "secondary cache" by 2GB or more, server may encounter timeslice error.


New feature request to allow the SET command and DUMP TRANSACTION to be executed inside EXECUTE IMMEDIATE statements.


Invalid oampage errors (1131) are thrown if the table gets dropped (in a parallel session) during the execution of builtins like data_pages(), reserved_page(), row_count() etc. The traceflag 1116 can be used to suppress these errors in non-temporary databases. In temporary databases, these errors are suppressed by default.


The message "Invalid column length: 12. Value must be between 0 and 10 for 'all-pages' row with minimum row length of 64" together with a stack trace which includes the modules 'collocate' and 'translate_varcols' may be reported in the error log when a database dump from a previous ASE version is loaded in a 64 bits ASE on IBM AIX.


Inserting duplicate or overflowed identity values may be unexpectedly allowed after sp_chgattribute " < TABLE_NAME > ", "identity_gap", 0 has been run for a table whose identity column has already reached its maximum value.


A 913 error, "Could not find row in sysdatabases with database id < dbid > . Run DBCC CHECKTABLE on sysdatabases." may be reported after loading a database and executing a stored procedure that inserts explicit NULL values in columns declared as java classes.


A 3478 error, "During undo the page timestamp value is less than new timestamp from log ... ", may be reported during ONLINE DATABASE after loading a database dump that was taken when a SELECT INTO command was active (but incomplete).


The message "current process ... infected with 11" may be reported with a stack trace in the error log in module "dbt_cacheremove" during the execution of dbcc dbcacheremove() when execute cursors exist and are not closed in the database being uncached.


Fail to download report log file when the SC client and SYSAM server are on different machines.


An UPDATE may incorrectly set varchar column to NULL value instead of a single space. This happens if the UPDATE is executed in the stored procedure and the value to be set is passed as the procedure parameter and represents a string of spaces. This problem happens only if the option string_rtruncation is set.


The error 678 "Invalid Buffer Cache Access: Could not open object < value > in database < value > " may be raised followed by the message "Illegal attempt to rollback transaction (xactname '$chained_transaction') that has already committed" when committing a transaction that has a select into command followed by a drop of the table just created. The problem is restricted to use of large page allocation, objects with Data-Only-Locking, databases with "ddl in tran" active and "set chained on" option.


SELECT queries may result in getting the system date, causing degradation in query performance.


The option WITH NO_INFO is added to the SET SWITCH command syntax to suppress any informational warning being sent to the client. This option has only effect on informational warnings, error messages when necessary are still being raised.


Comments generated as part of template job commands in lanaguages that don't use spaces will not display properly in Template and Job wizard summarys.


When user select 'No' on the change password option, when 'expire password' option is set, the connection is not released. This fix addresses this issue by closing the 'pre expired login connection'.


A batch inserting data to the table which has a default referencing global variable may fail if there are some other global variables referenced in the same batch. Stack trace shows module subglobals().


If statement cache is enabled, the value of the global variable @@error will be reset if it is accessed in a batch together with a statement that gets cached.


After installing the ESD, user can not rerun the GA installer to install additional products.


UI: segment policy page format inconsistent


The error 1105, "Can't allocate space for object ..." may be incorrectly reported, if the "greedy allocation scheme" is enabled on a table that has text/image columns and non-clustered indexes that are affiniated to distinct user defined segments.


When complex password policy option "disallow simple passwords" is set, ASE checks for login name contained in the password are case sensitive. With this fix, ASE will do a case insensitive comparision to avoid the use of login name with mixed upper and lower case letters in the password.


When complex password policy options are set using sp_passwordpolicy, installmaster may fail with 9578, 17720 and 17231 error messages.


ASE localization files are moved from $SYBASE/locales/{language}/{charset} directory to $SYBASE/$SYBASE_ASE/locales/{language}/{charset} directory in ASE 15.0.2 release.


When an external login is mapped to an ASE login with a different name, if the external login password is changed, it should be updated in the mapped login if there is a one-to-one relation, but this is not happenening.


LDAP or PAM logins that were added using ASE older than 12.5.4 will not allow external authentications to failover to ASE logins, if authenticated by ASE 12.5.4 or later


There is no password related audit option.


In 12.5.4, ASE Plug-in failed to re-open "Add Trigger (Template)", after a trigger has been created using the template. This problem is seen for all compiled objects - defaults, rules, procedures etc. when a template is used for creation of these objects.


ASEP used to show no ASEs in the drop down box on Connect dialog if user's interfaces file contains any line that has white characters between "query" and "=". This has been fixed.


The ASE-15_0/SC-3_0/log directory is created as an empty directory in the release area.


ASE Plug-in, through component 'dsparser.jar', was not able to process server entries in a interface file that has multiple 'query' services, or services with filters (e.g. 'ssl'). This has been fixed.


SSL: isql sessions hang when doing a select query and the negotiated packet size is 4096 or greater.


A new builtin switchprop() is added. Passing a switch-name or -number to the switchprop() builtin will return a status which contains the switch properties.


A new stored procedure sp_helpapptrace has been added for application tracing feature. This procdure lists all the sessions that are being traced, the sessions tracing them and the names of the tracefile.


Query using multiple worktables to resolve aggregates or provide distinctness or the order and performing dynamic index strategy to resolve OR predicate may fail with different errors related to sort operations including error 1509 "Internal error encountered in merging rows; resubmit query batch." Sometimes query execution may fail with stack trace logged in the errorlog. The module shown in the backtrace is bld_dynindex.


sp_help and sp_helpartition show the row count as zero for proxy tables


The message "current process infected with 11 in the module sendtext()" together with a stacktrace which includes the modules 's_execute', 'exec_eop' and 'run' maybe reported in the errorlog when running a SELECT with a UNION ALL clause and ORDERBY selecting text or image columns from a table.


Adding a built-in password_admin for password administration related operations.


The minimum password length of system encryption password does not match the minimum password set in sp_configure.


Proxy tables cannot be partitioned in ASE 15.0.2.


Previously the default port number for Jini server discovery service on Edit/Add Discovery Setting dialg was 9999. It has been changed to the correct port number 4160.


When a predicate in a query needs data type conversion for literals that result in data loss, partition elimination does not happen. As an example, a query wih a equality predicate on some literal may result in no data loss and the optimizer may eliminate the respective partitions, provided a semantic partition exists on that column. But, if the literal is different with a higher precision, data type conversion will make the result of the predicate false, and the partition elimination functionality fails to eliminate the required partitions.


User with anonymous connection to UA could not open Roles folder because ASEP would not be able to display role mappings. The requirement is now relaxed so that user with sa_role/sso_role/anonymous-UA-credential can still open Roles folder. The role mappings column won't be shown in this case.


An EX_INT lock was held on Syslogins when a connection logged into ASE, this is now changed to a SH_INT lock to help release this lock as soon as the scan is finished.


Enhanced LOAD database WITH VERIFYONLY to be tolerant of database existance and size.


DBISQL unable to access tables with large identifiers. It gets error: The identifier that starts with ‘abcdefghijklmnopqrstuvwxyznowi’ is too long. Maximum length is 30. Sybase error code=103


The execution of SELECT-INTO under the SET CHAINED option context must not trigger the implicit start of a chained transaction.


Some views containing a union all query will fetch superfluous columns from the base tables when a user query aggregates over the view.


If a table column has a functional index on it and when we update this column, it could cause stacktrace.


Migration tool fails to migrate server logins if Job Scheduler is installed.


On IBM and Mac platforms, a 15760 error, "Invalid dump header when loading the database with ID ' < dbid > '" is reported when an archive database is loaded using a database dump for which a sysdevices row has already been created using the 'sp_addumpdevice "archive database"' stored procedure.


Display login password encryption information using sp_displaylogin.


Cannot boot server due to the error "missing lib error with solaris-32 bit dataserver: __fabsf in"


Command "create database sybsecurity" fails. The named database contains upgrade items that are not present in model, so "use database" (part of the command's action) refuses access because sybsecurity is not fully upgraded. There is no workaround.


Attention and kill processing is not working as expected for a process waiting for a RTDS message. The process may hang, without possibility to recover from that state. There is no workaround nor solution before the current fix.


If truncation length is set to 0, no data is returned for text col in dbisql


Wrong comparison result might be generated when MixedDTSarg is used on money- > binary, unichar- > char, char- > binary, or unichar- > binary casting.


The showplan ouput for a positioned DELETE or UPDATE query will show a 'TABLE SCAN' of the table being modified when the query execution actually uses a dynamic index.


One or more hard faults with type code 100001, "The page id, next page, or previous page value in the page header is invalid." is reported by DBCC CHECKSTORAGE when run against an archive database on which a transaction log has been loaded that encapsulates an ALTER DATABASE command.


Under special circunstances, REPLICATION AGENT started in recovery mode may fail to stop automatically after reaching the end of the log.


sp_sysmon may report wrong values for Replication Agent counter "Longest Wait" in different sections: "Log Extension Wait", "Forward Schema", "Backward Schema" or "I/O Wait from RS". This may happen if Replication Agent sleeps for a elapsed time longer than the sample time stablished by sp_sysmon.


Under rare circumstances DBCC TABLEALLOC may hang forever when executed with the FIX option to correct error messages "There are < value > OAM entries with zero used/unused page counts. Run DBCC TABLEALLOC FIX ..." when the OAM entries needing cleanup are the first in the list.


New features within ASE 15.0.2 require that we modify system catalogs. Provide support within ASE for detecting the need to do those modifications, and for downgrading to 15.0 and 15.0.1 servers. Upgrade must be automatic upon first boot of the new server, and upon online database after load database.


A task waiting on completion of a remote process (such as backup) cannot be killed


ssl_alloc() errors during Distinguished Name (DN) Lookup when binding the admin account, "the access account", can cause the security principal to be "locked out" because too many unsuccessful login attempts can be quickly attempted, exceeding the installation standards for unsuccessful retries.


In rare circumstances, TIBCO JMS or EAS JMS messaging operations may fail with one or more error(s) reported in the JRTMSServer log file (rtms.log by default) saying a "lookup operation failed".


Running Adaptive Server with an served license under a large workload may result in a stack trace.


create new server failed using syconfig after setting client charset to cp936 in locales.dat on Windows platform.


A session running DBCC LOGTRANSFER may abnormally terminate with the message "timeslice < value > , current process infected" followed by a stack trace when ASE receives an interrupt (Control-C). The modules "do_logtransfer" and "senddone" will be reported in the error log.


If a block device is used as database device there is no warning either in errorlog or displayed to user on all platforms except on HP-UX, NT, Linux.


If the bits used to mark extents with forwarded rows on data-only locked tables are incorrectly set in all-pages locked tables, the command CHECKALLOC fixes them, but TABLEALLOC, INDEXALLOC or TEXTALLOC don't do it.


Adaptive Server can assign the same virtual device number to multiple devices when one of devices is not accessible while creating the new device.


When "real time messaging" option for TIBCO JMS or EAS JMS is activated at runtime for the first time (since server start-up) and when that operation requires extension of the ASE shared memory space, the issue occures. The symptom is the impossibility to use the JMS messaging operations with crash of the external JVM named JRTMSServer. The reason is because the JVM attaches only to the first ASE shared memory segment in the RTDS 4.0 release.


Converting datatypes using Column Properties dialog fails


sp_droplogin error message should include all the database names where login is valid


srvbuildres -I parameter has no effect on the interface file


Warning message displayed when login is not user of sybmgmtdb is unclear and displays at inappropriate times.


Format the display to include proper spaces in role information for logins matching a wildcard expression in sp_displaylogin


While trying to print the plan, it could cause stacktrace in getindexname() and Spinlock violation error sometimes.


Add Role Activation menu.


Execute immediate query with CASE expression using local variables inherited from the outer scope does not work correctly producing stack traces.


The 'REORG REBUILD' command or the 'ALTER TABLE ADD/DROP/MODIFY' command will fail with error 3935 reading "Fatal protocol error. xact_beginupdate() API was invoked in the wrong context..." when it is run for a Data Only Locked table that has a clustered index created using a pre-12.5 ASE.


The SQLDBGR can be disabled using traceflag 4083. The traceflag is a STARTUP ONLY traceflag and has to be specified while starting up ASE. Turning the traceflag ON/OFF while ASE is running will not have any effect on the state of the SQLDBGR.


Incorrect interfaces file name is printed in the backup server error log, when no interfaces file name is specified in the backup server start-up command line.


The T-SQL function identity() will not accept an unsigned integer as an argument.


Adding new commands 'list in groups' and 'validate password options'


CR 363894 causes 3250 error when using striping and Netbackup The error 3250, "The devices ' < backup api library name > :: < filename > ' and ' < backup api library name > :: < filename > ' specified in the command should be different." will be raised if the file names of two stripes are the same. This error should only be raised for normal or compressed files and it is an error assuming that an external API cannot use duplicate names.


Added a new DBCC command to release memory from procedure cache or engine local cache. The syntax is as follows: dbcc proc_cache (free_unused | flush_elc) where - free_unused: free unused procedures from cache - flush_elc: flush pages from Engine Local Cache. This DBCC needs to used with care and when the system is not in heavy use.


Enhance monLocks table to display the location information for a lock.


Up to 64K rows are now allowed for group by aggregates, which reduces the need for join backs of non-combinable aggregates. Previously there was a limit of the page width for an aggregate row, which is now not the case.


ASE does not correctly detect that some databases are already fully upgraded, so it attempts to upgrade them every time it boots.


Insert into index with large number of rows of duplicated index key value could fail due to incorrect split schema.


When Interactive SQL was launched outside of Sybase Central, its Connect dialog did not set a login timeout. But the login timeout would take effect if Interactive SQL was launched from Sybase Central ASE Plug-in. This inconsistency has been resolved. User can set the login timeout by clicking Settings button on Connect dialog.


Feature request to: 1) Secure login passwords stored in syslogins using SHA-256. 2) Store the last login time in syslogins depending on the "enable last login updates" option.


set option show_missing_stats on was not reporting all the cases in which statistics could be added to help the optimizer. In particular, the LIKE predicate could use statistics for expression histogramming, which were being requested by the set option show_missing_stats diagnostic.


New feature to allow mounting databases from external files using different names to the ones stored in the manifest file.


The message "current process infected with 11" in the module 'memmove' together with a stack trace which includes the modules 'LeThContext::LeThContext()', 'LeXCHGOp::_LeOpAcquire()' and 'LeHashOp::_LeOpAcquire()' will be reported in the error log if firing a trigger which executes a stored procedure with a parallel query.


New Feature - Users can specify 'skip_alloc' parameter while creating a database device from 15.0.2


New Feature - DDLGen generates 'skip_alloc' parameter for database devices for ASE whose version is greater than or equal to 15.0.2 .


In data-only locked tables, DMLs may sometimes appear to hang on account of undetected lock-latch deadlocks if there are concurrent sessions running at isolation level serializable doing backward scans.


Auditing cmdtext shows cleartext password of sp_password in sysaudits table.


sp_dropuser should drop all key copies for the given user in current database.


Unsigned integer identity columns may display a "d" after the value.


An 'ALTER DATABASE' command blocked by a concurrent 'DUMP DATABASE' command may not cleanup properly if interrupted by Ctrl C. As a result, Sysusages and Systhresholds transactional locks may be unexpectedly left behind.


The execution of a stored procedure created with the option "with recompile" may fail the error 225 if it accesses a non temporary table created inside the procedure.


few new fields are added into 'systabstats' system catalog.


AP warning message may be displayed when executing nested subquery with forceplan on.


Interactive SQL on Windows used to be launched by a batch file "dbisql.bat". This is now replaced by a Windows native launhcer.


Executing sp_showplan and passing in the spid of a running bcp process can result in a stack trace which includes the module le_showE_Stmt.


sp_helprotect < permission_name > should provide information for any specific permission granted in a given database.


with Cell based HP Itanium server SPDC fails generate a license if the partition number is appeaded or SYSAM-2_0 fails to recognize generated licenses without partition number


A timeslice error followed by the all_active_devices() and modules db_fill() may be raised when loading a very big archive database.


Internal indexes created on replicate tables with text/image columns will use as index ID the firt free starting from 250, in decrease order.


The stored procedure sp_plan_dbccdb may incorrectly display archive database devices as recommended devices on which to install the 'dbccdb' database.


If there is a cursor fetch statement right before calling sp_helpartition and if that fetch is from an empty table, 515 error might be raised from sp_helpartition.


An existing Job Scheduler installation fails to start after 15.0.2 upgrade.


It is possible to run ONLINE DATABASE after a LOAD TRANSACTION command that failed during recovery of the database.


ASE will use kernel asynchronous i/o on Linux. Traceflags 1630, 1639, and 1649 are now obsolete. Synchronous i/o will be used on file system devices that do not support kaio, such as tmpfs.


Stack trace could occur during joins between local and remote tables with IN clauses.


Partition elimination does not happen if a disjunctive predicate is given to a query where each side of the disjunction can result in partition elimination and the same set of predicates on partitioning columns appear in each side of the disjunction. Ex. (col1 = 10 AND col2=20) or (col1=10 AND col2=30) will be rewritten by the predicate factoring functionality as (col1 = 10) AND (col2 = 20 or col2 = 30), which results in a partial match of the columns used in partitioning i.e. col1 and col2 with the conjunctive predicates and prevents partition elimination.


The message 'current process infected with 11' in module 'level0_restart' may be reported in the error log when SP_SHOWPLAN is run or the configuration option 'plan text pipe active' is set and concurrent activity on table Syscolumns takes place. Modules 'showplan', 'showKeys' and 'getcolname_level0_fromcache' will also be reported in the stack trace.


The error 8207 "Couldn't find an available descriptor for an object. Raise the value of the configuration parameter 'number of open objects' for more descriptors." may be raised in general, after errors 1204 were reported "ASE has run out of LOCKS. Re-run your command when there are fewer active users, or contact a user with System Administrator (SA) role to reconfigure ASE with more LOCKS." when ASE runs out of locks during the instantiation phase of a descriptor's meta-data, resulting in leaking free descriptors mistakenly.


When execute "sybatch.exe -r < resource file" to upgrade an ASE server, an error msg is printed to the console saying it can't find RUN_ < server > .bat file in the new %SYBASE%\%SYBASE_ASE%\install directory.


Tables with large number of partitions may spawn a whole bunch of worker processes without getting any positive scaling. This is due to the fact that the optimizer makes an assumption that a large number of partitions mean that the table can support a parallel scan with the same number of threads as the number of partitions, which may not be the case. Often times, users have a large number of partitions because of manageability. This bugfix allows user to configure the maximal number of threads for a table or an index using the sp_chgattribute stored procedure.


sp_monitor aborts with an error reporting that the server "loopback" does not exist.


Previously Query Editor sometimes would not populate tables correctly. This has been fixed.


Expressions on sargs were not always evaluated when it should have been possible to obtain a temporary value to be used for histogramming estimation. When this was not done then default selectivities were used for estimates which could result in incorrect join orders. All possible constant expressions are now evaluated at compile time, if it could help with producing a histogramming sarg. for example, "r.a > < some constant case expression > " would not be used for histogramming estimates, and instead the default selectivity of 0.33 would be used for this sarg.


Add new options 'expire login passwords', 'expire role passwords', 'expire stale login passwords' and 'expire stale role passwords' to sp_passwordpolicy procedure to expire login and role passwords.


Queries that use the special or startegy and have a descending order by clause may return results in the wrong order. This will occur if one or more of the columns in the disjuncts always reference the same literal value.


DUMP DATABASE WITH COMPRESSION will generate an invalid dump if the archive is a library created using the backup API. For example, DUMP DATABASE dbname TO "compress::myfile" WITH COMPRESSION=n.


There was an overestimate of PIO for tables which are bound to a large buffer pool, and also have a reserved page count significantly higher than the table pages. This was due to a double costing of the page cluster ratio, in addition to the sparseness of rows in the extent. Adjustments were made to avoid the double costing so that PIO estimates for large IO are more accurate


The authentication mechanism may be missing or truncated in the audit trail for a login event when a Kerberos principal name and mapped user login name approaches 30 bytes in length.


There are some inconsistencies in pre-15.0 statistics that are corrected during upgrade. In this case, there were range cells and yet the range density was zero, which occurs occasionally due to a pre-15.0 problem in update statistics in which the range cell only exists in the last cell of the histogram and the remaining cells are frequency cells. The inconsistency are now corrected during upgrade to 15.0.


If you create a table and add a numeric identity column to the table, sp_create_text_index fails on the table with a message "Datatype numeric ( Column 'xxx' ) is not supported in a text index.".


HA command, sp_companion may fail for HA-enabled dataserver on Sun Cluster 3.1 running on Solaris 10.


The message "current process infected with 11" in the module 'close_range' together with a stack trace which includes the modules 's_estmt_loopend' and 's_execute' may be reported in the error log if a DML statement is executed involving a high number of tables, the table being modified has many referential constraints and there is a trigger defined on it.


Max and min vector aggregation can result in sigsegv when operate on unichar and univarchar columns.


Potential non-evaluation of OR-clauses if query qualification references a column with the decrypt_default attribute. In SQL statements containing qualifications of the type WHERE dd_col = < value > OR non_dd_col = < value > , where dd_col is an encrypted column with the decrypt_default attribute and non_dd_col is a column without the decrypt_default attribute, the WHERE clause will disqualify all rows if the user executing the query does not have decrypt permission on dd_col.


The builtin function object_name() incorrectly returns NULL for any master-only system table in a database other than 'master', that has been loaded with a database dump of the master database.


Stacktrace in RcToAndOrTree() could happen when a column is compared with a scalar aggregate result under an OR predicate and the same column appears under the OR predicate multiple times. For example, (A > = (select min(A) from t2) or A > = (select min(A) from t3)).


When the jconnect and ctlib send a varchar longer than 255 bytes,in some cases it could cause stacktrace in memalloc() with 702 error since it requests 2147483647 bytes memory.


Synchronize the new options "expire login passwords", "expire role passwords", "expire stale login passwords" and "expire stale role passwords" added to sp_passwordpolicy on companion server.


Server status was checked periodically even though user unchecked the plug-in setting. This has been fixed.


The missing sample directories (JavaXml, esp, histsrvr, messaging, server, and sybmigrate) have been added back into ASE 15.0.2.


The spelling of sybprocs in message Building sysprocs device and sybsystemprocs database .... sybprocs device and sybsystemprocs database created is not correct, it should be sysprocs.


In some exception case, print SQLTEXT could stacktrace from terminate_process().


Improve login performance.


When ASE is booted with 16k page size,installmaster script may fail to complete with following message- "The current 'max memory' value '32768', is not sufficient to change the parameter 'allow updates to system tables' to '1'".


Feature Request: "maximum failed logins" set to '-1' increments syslogins.logincount on every login failure.


XPserver sometimes fails to come up on 64bit platforms with the following error in the errorlog, "os_syscmd: system function returned error. OS error string: Bad address".


sp_help is enhanced to display the decrypt_default information for all decrypt_defaults declared on a table. This information consists of the internal name of the decrypt_default.


When server's default sortorder is one of Unilib sortorders, and the statement matches a char variable in the like clause against an unichar column, 2432 error might be raised.


On occasion, the alter table function raises an exception in adc__update_sysreferences() and getnext() when a column is dropped from the original table definition.


Print option 1 to DBCC PAGE will now decode the TIPSA region of 1st text/image pages, and will print out the data for all text and image pages as a byte stream.


ASE HA Failback fails with ServiceGuard A.11.17 but works on ServiceGuard A.11.16 and A.11.15. This is a compatibility issue with ServiceGuard A.11.17. ServiceGuard A.11.17 changes the message in its output from "cmhaltpkg : Completed successfully" to "cmhaltpkg: Completed successfully". A white space has been removed in the message between "cmhaltpkg" and ":" causing ASE HA Failback to fail.


Queries that eliminate partitions based a query predicate may chose a global non-clustered index scan that has a low data row cluster ratio over a table scan that would be more desirable due to partition elimination.


A 325 error, "Adaptive Server finds no legal query plan for this statement." may be reported with a SELECT query when the opportunistic distinct view option is enabled.


The message 'Could not execute login script for user < username > ' will be incorrectly reported when the password has expired. In an HA environment, setting the password at the primary will fail to be replicated at the companion server with the same error message.


The messages for errors 15082 and 15084 respectively "There are < value > OAM entries with zero used/unused page counts. Run DBCC < value > FIX on objid < value > indid < value > ." and "The OAM has no room for new inserts. Run DBCC < value > FIX on objid < value > indid < value > ." should not report "Run DBCC CHECKALLOC FIX" if DBCC CHECKALLOC was the command being executed, since CHECKALLOC can only be executed at the database level. Instead the relevant command that needs to be run later in order to correct this non severe problem will be reported, either TABLEALLOC, INDEXALLOC or TEXTALLOC.


If ASE 15.0.x is running using an installation that has not yet been upgraded from 12.0.x or before, and a user executes CREATE PROCEDURE in a database, then when upgrade tries to upgrade sysprocedures, ASE may produce messages warning about 'invalid column length', with associated stack traces.


The default stack size on AIX64 is increased from 96k to 104k.


System wide password expiration will be ignored and a user with an expired password will be able to log into the server unless a password expiration policy has been defined using the stored procedure sp_passwordpolicy.


Turning off the direct i/o through DIRECTIO=false doesn't take effect even after restarting ASE if the device had the DIRECTIO option set to true before.


When a login password has expired in a High Availability (HA) environment on both the master and companion servers, execution of sp_password silently fails to change the password on the companion; the password change succeeds only on the local server.


The command DBCC LISTOAM will incorrectly report the error 'Invalid Object Id < n > ' when the object is a master only system table.


Attempts to run dbcc report_al(db_name) encounter error 10334, state 80 (permission related internal error).


The message "current process infected with 11" in the module 'HashBuf::HbBufSetRunInfo' together with a stack trace which includes the modules 'LeHashPart::LePartGetConsumerId' and LePipeRepart::LePipeWriteVtuple' may be reported in the error log when a query involving more than 31 columns is executed in parallel and "hash repartitioning" mechanism was chosen.


RTDS licenses obtained from DI, that did not contain the PE=EE string, would not work when used with ASE EE.


If a compute clause's group-by list contains an expression and no rows are returned for the query, then a SEGV or stack corruption could occur.


Under rare circumstances DBCC CHECKSTORAGE may detect non-existent 100018 errors when run on an archive database.


When parallelism is turned on, a query with several tables may cause a time slice error. This is because the optimizer has a large search space to traverse in the parallel mode and the timeout mechanism does not take that into account while comparing a large number of plan fragments.


Using the top clause in a select statement that involves a union all in a view (or equivalent derived table) in the from clause does not limit the size of the result set as expected.


For DBCC CHECKCATALOG, if the partition id order in the tree from sysprocedures is different from the partition id order in the syscomments, the 15911 error will be raised.


Error 644 "Index row entry for data row id ( < value > , < value > ) is missing from index page < value > of index id < value > of table ' < value > ' in database ' < value'..." may be reported in module "del_rownotfound" with a stack trace in the error log when an UPDATE command is run on a Data Only Locked table and the scan index being used by ASE to perform the update has one or more of its columns affected by the given update.


Previously a server's preferences (such as number of lines of server log to retrieve) were lost when the server was cut and pasted. Now the preferences for the server are preserved when the server is cut.


Previously when you sort a table column of data type "binary" on Data panel, a ClassCastException stack trace would occur. This has been fixed.


Entities in xml documents are not handled correctly on AIX FBO builds.


When a sort node is used for a merge join, and an ORDER BY request is made by the query, that uses descending columns, then there is a possibility that the ORDER BY on those columns would be ignored, and only the ascending columns in the ORDER BY would be respected. This problem occurs when an attempt would be made to use the ordering available from the sort node, to also be used by the ORDER BY so that an extra sort node is avoided.


Materialized status of a computed column cannot be altered from column properties in Sybase Central ASE Plug-in.


Wrong result could happen when "FOR BROWSE" mode is used and the query has an ORDER BY on some expression.


SELECT INTO statements that source a union view that references a virtual computed column will generate recompilation errors. In the case of a batch, a 225 error is generated: Cannot run query--referenced object (name NAME NOT RECOVERABLE) dropped during query optimization.


The message "current process infected with 11" together with a stack trace may be reported in the error log if a GROUP BY used on a comupted column with sum and count aggregates including a distinct clause.


When using RTDS (version 4.0 and before) with MQ, messages larger than 1MB cannot be sent or received.


Wrong result could happen if the query has an equality predicate between two expressions (expr1=expr2) and through some other equijoin predicate(s), all the columns referenced in the predicate can be completely mapped to one joining table and at the same time also completely mapped to another joining table. For example, "t1.c1+2=t2.c1*2 and t1.c1=t2.c1".


Query with having clause with a subquery and correlated aggregate will not evaluate correctly having clause if it uses IS NULL operator.


On Solaris, if ASE is configured for High Availability with SunCluster, the HA agent ase_monitor may print misleading error messages on every thorough probe, though the error occured only once.


When dataserver of sjis and backupserver of eucjis are used, the dump command outputs the error of open server. Open Server Error: 16368.10.0.0 srv_senddone(): A message was initialized, but not completed.


Inserting values into columns with defaults may get Msg 233 on a HA secondary server.


For table with APL clustered index, sometimes a table scan is incorrectly reported as an index scan in diagnostics (such as showplan) when there is some predicate on the index column but not on the leading column(s).


A new configuration parameter "enable merge join" is added to enable/disable merge_join at server level. This configuration can be set to 0 - unset merge_join at server level. 1 - set merge_join at server level. 2 - set merge_join to default value (as per curent optgoal) at server level.


Infinite 9835 errors raised by a parallel execution family after segmentation fault in HashBuf::HbBufSetRunInfo.


In rare circumstances, stack trace which includes the modules 'traceassert' and 'dynmp__calc_objpoolsize' may be reported in the error log when running Diagnostic Server with large values of some configuration parameters.


When a user changes the wash size of the smaller pool "sp_poolconfig ''default data cache'', ''2K'', ''wash=4444K''", though the wash size is changed in the sysconfigures table, it is not being written into the ".cfg" file. As a result of this, after reboot of the server, the wash size of ''2K'' pool is reverted back to DEFAULT


Installer not finding jvm on hpux 11.31


Migration tool support for new encrypted column features.


keycustodian is allowed to set the system encryption password.


The uid of sysquerymetrics will be 0 when all table names in a query, which are not qualified by user name, are owned by the dbo. This change can be disabled by turning on Traceflag 15361.


When OMNI tables are involved and no parallel is turned on, ASE aborts queries saying that there is insufficient threads configured.


A 511 error "Attempt to update or insert row failed because resultant row of size < num > bytes is larger than the maximum size (1964 bytes) allowed for this table." may be reported during upgrade to 15*, during "upgrade step [ID 60], alter table (table sysstatistics)" when there are small histogram boundary values at the end of a sysstatistics row.


Update sp_lmconfig to allow the following license types to be specified: LP, LF, LR, LV


A SELECT query with an OR CLAUSE may not return the correct results.


Under random circumstances, the error "Cannot create msgqueue Xnnnnnnnn because it already exists" could be raised by the backup server. The chances are higher when there are several dumps running simultaneously.


A distinct order-by query in a non-binary sortorder server may return too few rows. This can happen if the sum of unique distinct (from the select-list) and order-by columns is less than 32 and there are no character columns in the select list that are not also in the order-by list. Taking the following query as an example: select distinct a.a, a.c from A a, B b where a.b=b.b order by c In this case, "c" is the only character column in select-list and it appears in the order-by list. So, the bug occurs. If "a" was a character column, then the problem would not occur.


sp_deviceattr doesn't allow setting of the directio flag on AIX


An outer join query using DISTINCT and ORDER BY clauses may return incorrect results for COMPUTE predicates on expressions involving columns from the inner table or may raise a 325 error: "Adaptive Server finds no legal query plan for this statement."


A timeslice error followed by a stack trace that includes the module db__diskremap_sysaltusages could result when trying to load a transaction dump on a big archive database.


If reformatting plan is chosen and the worktable need to be filled more than once, it could cause wrong results.


In certain rare circumstances a cursor opened for update can calculate an incorrect row size for the newly updated row. This causes the cursor to fail and report error 669: "The length computation of the row < rowid > is wrong. Ensure that row-length is no greater than max possible size of < maxrowsize > . This error was detected during cursor scan fixups for cursor < cursor_name > . This is an internal error."


Stacktrace in CgpGlobal::CgpGenerate() might happen when a parallel plan is chosen where there is an Xchg operator above a Sequence operator.


A query with a lot of AND terms in a WHERE clause may cause stack guardword corruption.


If the configuration option "print deadlock information" is set and a deadlock occurs, ASE activates trace flag 3605 for the deadlock report but forgets to unset it after the report is finished, causing additional subsequent output to be written in the error log.


A simple 1 table query with a predicate that represents a FALSE condition as 8 < 5, will cause the query to stack trace. This is because the partition elimination functionality cannot deal with a predicate that has been marked FALSE and results into a stack trace.


"auditinit" creates sysaudits_XX tables without "nodeid" column in "sybsecurity" database. Also, the column "objname" in sysaudits_XX tables have varchar(30). It should be varchar(255).


A query involving many AND/OR terms may cause stack overflow.


In one process, if it use sp_showplan < spid > to probe another process and if the target process which is being probed is blocked before entering new LAVA engine, it could cause stack trace in _LeOpShowOp() if plan use worktables.


When ASE reports an I/O failure as a result of a hardware error, it reports an incorrect virtual page number for the failure.


If the first parameter passed to the built-in reserved_pages() is an invalid database id, the error 913 will be raised with a fatal severity 22 instead of a user severity 16.


The HP-UX installer can't remove non-empty temporary directories when user exists the installer.


Wrong result or error 325 (no legal plan found) could happen when a subquery from a view/derived table is referenced in the parent query block's WHERE clause.


Incorrect results may sometimes be returned when executing a query involving more than 2 tables with outer join on a non equality clause and using GROUP BY.


Stack trace may result when the view definition has a group by all clause and the target list has columns which are not in the group by or the user query.


When Q engines are onlined with ASE, messaging tasks and other DBMS tasks may hang.


Error 11775 displays a negative number instead of the command name when encrypted columns is not enabled and an attempt to grant permission on encrypted columns commands is made.


Previously when a table contains unsigned bigint columns, Data panel for the table would not show the data. This has been fixed. (Note Interactive SQL will show the data.)


An incorrect remote sql statement could be generated for a proxy table when nested convert routines are used that specify a conversion style. The conversion style could be missing on the generated remote statement.


In rare circumstances, Adaptive Server may raise a 701 error "There is not enough procedure cache to run this procedure, trigger, or SQL batch. Retry later. etc." mistakenly, although one or more engines have local procedure cache available.


Several new SET optimizer set commands will now be able to used at compile time to affect the optimizer in stored procedures or batches. Previously, the optimizer set commands would not take effect until the stored procedure was executed or recompiled. Note that care must be taken to reset the SET command prior from returning from the stored procedure, otherwise the execution of subsequent stored procedures may be affected. If it is intended that subsequent stored procedures should be affected, then the export_options feature should also be used, since the intention is for a later change to localize the following SET commands unless export_options is used (such as in a login trigger). The following SET commands were affected: DISTINCT_SORTED DISTINCT_SORTING DISTINCT_HASHING GROUP_SORTED GROUP_HASHING BUSHY_SPACE_SEARCH PARALLEL_QUERY ORDER_SORTING NL_JOIN MERGE_JOIN HASH_JOIN APPEND_UNION_ALL MERGE_UNION_ALL MERGE_UNION_DISINCT HASH_UNION_DISTINCT STORE_INDEX INDEX_INTERSECTION INDEX_UNION MULTI_TABLE_STORE_IND OPPORTUNISTIC_DISTINCT_VIEW ADVANCED_AGGREGATION REPLICATED_PARTITION GROUP_INSERTING ASE125_PRIMED AUTO_QUERY_TUNING QUERY_TUNING_MEM_LIMIT QUERY_TUNING_TIME_LIMIT SET PLAN OPTGOAL


A query like the following may get error 137 (Must declare variable '@@@V0_VARCHARorder'.) if statement cache and literal auto parameterization are enabled. For example: select b2 from t1 where a1 = 'TEST'order by b2 There is no blank between a literal value surrounded by single/double quote marks and a SQL keyword.


Under rare circumstances, a query using views and nested aggregates results in a Signal 11.


In some cases, queries containing aggregation with GROUP BY and a mixture of nullable and non-nullable columns can lead to wrong results or divide-by-zero errors (if the AVG aggregate is present). The error will only occur if the optimizer chooses a query plan that contains a materialization step for the aggregation results (This can be seen from the showplan output by the presence of a STORE operator).


Using tsequal() builtin function within stored procedure could caused stacktrace.


In some situations, a query with outer join between a view and derived table might return wrong result.


sig11 could happen in LeSarg::mapSarg() during execution when there is a vector aggregate operaor (GroupBy) or union operaor under a three-way or more nested loop join (NaryNlJoin).


Signal 11 could happen in CgEvals::_CgCompVcol() for an outerjoin whose's ON clause contains a joining expression and the expression involves a column which also participates in another equijoin predicate. For example, (t1.c1=t2.c1 and t1.c2=t2.c1+5).


Update installmaster script to include fixes for the following ODBC, OLE DB and jConnect Driver CRs fixed: CR 438735 - ODBC Driver by Sybase: Unexpected behavior in Crystal Reports when connecting using ODBC Driver, because SQLProcedureColumns returns ?NO? for IS_NULLABLE. CR 416248 - ODBC Driver by Sybase: SQLColumns returns type name varchar for timestamp data type. CR 416250 - ODBC Driver by Sybase: SQLColumns returns type names varchar and char for nvarchar and nchar data types respectively. CR 438423 - ODBC Driver by Sybase: Accessing ASE using ODBC Driver from Microsoft Access 2003 causes reserved error (-7707). CR 420176 - OLE DB Provider by Sybase: Unable to execute queries from Microsoft SQL Server using a Sybase ASE linked server. CR 427244 - jConnect: Calling DatabaseMetaData.getProcedureColumns when auto-commit mode is off raises SybSQLException: SELECT INTO command not allowed within multi-statement transaction. CR 442470 - jConnect: DatabaseMetaData.getTypeInfo call no longer returns ASE Local type of "double precision". CR 443327 - jConnect: DatabaseMetaData.getTypeInfo returns internal ASE system user types (like longsysname) which should not be returned.


The problem occurs for complex queries which contain many composite joins as well as equi-sargs on joining columns, and descending index columns. The failure occurs due to incorrect handling of composite orderings when a descending attribute is in the composite ordering, and an equi-sarg exists on another attribute of the composite ordering.


On AIX platform, a 19608 error, "no such parameter 'directio' " reported when changing directio parameter with deviceattr stored procedure


Wrong result could happen if there is an OR predicate and one OR term appears in all the disjuncts of the OR predicate (in other words, the OR term can be extracted out as the common predicate and the origial OR predicate can be removed). For example, ((t1a.c1a = 9 AND t1a.c1a > t1b.c1a) OR t1a.c1a > t1b.c1a).


Signal 11 could be hit in CgEvals::_CgCompLogOp() if there is an OR predicate and one OR term appears in all the disjuncts of the OR predicate (in other words, the OR term can be extracted out as the common predicate and the origial OR predicate can be removed). For example, ((t1a.c1a = t4a.c3 AND 0 > t4a.c3) OR t1a.c1a = t4a.c3 )).


Deleting system table rows is not enough for downgrade; the anchors pointing to those rows must also be deleted. Otherwise subsequent upgrade will fail because the booting server can still find the deleted rows, so ASE will think the table still exists.


Server may give error# 325 (finds no legal query plan for this statement) when group_hashing is off and the query has GROUP BY on an expression.


When a resource governor limit is detected and causes a query to abort while that query is creating a work table for the benefit of a hash operator, then a stack trace may be produced.


Error message 403 (Invalid operator for datatype op: = type: VOID TYPE.) could be raised when a DISTINCT view is used and one of the view projection is a constant.


When an expirable license is obtained on grace the date of expiry of the license is reported instead of the date of expiry of the grace period. The expiry of grace periods for permanent licenses is reported correctly.


Wrong result could happen for mergejoin/hashjoin which contains a joining expression and the expression involves a column which also participates in another equijoin predicate. For example, (t1.c1=t2.c1 and t1.c1=t2.c2+t1.c2).


The installer failed to configure Job Scheduler because there is no ASE to install SQL and template files.


After loading a database that requires upgrade, a user who is DBO but does not have sa_role or oper_role will not be able to bring that database online. ASE reports Msg 968 'Database [name] is not upgraded and hence is not available for access'.


Use of SET FORCEPLAN in 15.0.1 ESD 1 and ESD 2 can result in AP errors


HP-UX uninstaller can't remove softlinks.


Sybase Unified Agent is not added to the Windows service on Windows 64-bit.


A SQL statement that contains an expression subquery which returns a non-nullable result datatype can lead to a 530 error. The error will occur if the expression subquery qualifies no rows and thus returns NULL and the query plan requires the subquery result to be stored in a worktable (The worktable can be seen by the presence of a STORE operator in the showplan output).


With "max parallel degree" configured to more than 1, statements that reference encrypted columns with the decrypt default property can cause ASE to stacktrace with a "Worker Process internal plan copy error for EVAL E_DECRYPT_PERM" message.


When upgrading an installation that has Job Scheduler enabled, the booting (new) server can report error 11031. After this occurs, upgrade will hang in database 'sybmgmtdb', waiting for a lock that cannot be granted.


The REORG REBUILD command run on a replicated database with DDL on should not be replicated, either, the internal SQL such as ALTER TABLE generated during its processing.


Error message 530 (Attempt to insert NULL value into column 0 in work table; column does not allow NULLS. UPDATE fails) could be raised when there is a join predicate with an expression and each column in the expression is involved in another equijoin predicate with some other column.


Incorrect results could be returned when a mergejoin with at least two equijoin predicates is placed over a nested loop join that uses a reformatting strategy for the inner table and the outer scan of the nested loop join involves a unique index.


Previously on Server Properties General page the OS and Platform field displayed different information depending on whether UA (Unified Agent) was available (OS/Platform from the UA was preferred over build OS/Platform from the version string). To avoid confusion, ASEP now clearly labels OS/Platform as "Build OS" and "Build platform". Add additional host OS/Platform fields are shown only when UA is available.


Wrong result could happen for an outerjoin whose only outer table is is a scalar aggregate view/derived table.


sig11 might happen in LeSarg::mapSarg() during execution when one of the joining tables is a proxy table and the join predicate involves an expression on columns from both the proxy table and some local table.


A select into statement with NULL timestamps may cause siganl 11


The default db after user login is the not the default db saved in syslogins. It's the master database instead.


The showplan ouput for the SCAN operator of a SQL statement that requires reading the rows of a semantically partitioned table may incorrectly contain '[ Using Dynamic Partition Elimination ]' when a global index is used for the scan and the statement contains predicates on the partitioning key columns.


The default number of locks has been increased from 5000 to 10000.


Installer throws "ClassNotFoundException" when run on machine with previous installed ASE.


64bit monserver on solaris can have very high cpu utilization at times due to not being linked with the kernel threads libraries (/usr/lib/lwp/64)


The ASE server.loc file and sybinit/*.loc files have been moved under the ASE-15_0 directory tree, in order to reduce issues overlaying locales files from other Sybase products.


License server is not started after the installation.


User data in text/image column may become garbled when the database is upgraded from 11.9.x to 15.0.1 directly by using dump and load, and the endian type of the source and target platform is different.


In rare circumstances the error 206 raises when executing a query with joins and group by.


A query could return illegal duplicate rows if it contains a SELECT DISTINCT both in the SELECT clause of a query block and also in the SELECT clause of either a derived table or a view which are directly part that query block's FROM cluase.


When outer joins are used and there is an equi-join outside the scope of the ON clause, in which one of the operands is an expressions and the other operand is a single attribute of the table which is the inner table of the outer join, then there is a possibility of an incorrect answer. An example would be the following select * from t2 left join t1 on c2 < c1 where c1=c2-1 go


localization errors are outputted when configuring servers during installation


When HA primary and companion servers are established in failover mode and sp_locklogin attempts to lock a login account, an HA consistency error is reported.


Due to problems installing Infomaker on Windows 20003 from the PC-Client autorun menu, the InfoMaker install must now be run separately. The autorun menu has been changed to display instructions for launching the Infomaker installer.


Only the first license server in a Three Server Redundant configuration can be started. This is because the sysam script checks whether a License Server is UP but does not differentiate between server names in a Three Server Redundant configuration so it assumes all servers are UP as soon as the first is started.


Possible wrong result when there is a mismatch datatype comparison underneath a CASE expression and an implicit CNVT node is needed there.


The message "Current process ... infected with signal 11 (SIGSEGV)" may be reported in module 'memfreeheap' during the execution of an ALTER TABLE to change the lock scheme of a table from 'allpages' to 'datarows/datapages'. The modules 'altertab' and 'alt_lock_change' would also be reported in the stack trace in the error log.


Previously when user clicked Help button on Connect dialog (either from ASE Plug-in or Interactive SQL), an error occurred with the message: "Unable to find help target: HELP_ASE_DB_SRC_ADVANCED_PAGE". This has been fixed.


The installer does not preserve the file timestamp when moved or renamed. Because of this, files that were moved have current timestamp. When the installer overlays the files (upgrade), it prompts for overwrite.



  • SAP Adaptive Server Enterprise (ASE) 15.0.2 IR
  • AIX 64bit
  • HP-UX on IA64 64bit
  • Linux on Power 64bit
  • Linux on x86 64 64bit
  • Solaris on Sparc 64bit
  • Solaris on x86 64 64bit
  • Windows on x64 64bit


Sybase Adaptive Server Enterprise 15.0 ; Sybase Adaptive Server Enterprise Cluster Edition 15.0


Fix, Patch, Bug , KBA , BC-SYB-ASE , Sybase ASE Database Platform (non Business Suite) , BC-DB-SYB , Business Suite on Adaptive Server Enterprise , BC-SYB-ASE-CE , ASE Cluster Edition (Standalone) , BW-SYS-DB-SYB , BW on Adaptive Server Enterprise , Problem

About this page

This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).

Search for additional results

Visit SAP Support Portal's SAP Notes and KBA Search.