SAP Knowledge Base Article - Preview

2079447 - Targeted CR List for ASE 15.7 SP121 -SAP ASE


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 "enable large pool for load" configuration parameter is added to configure the use of large buffer pools during the recovery phase for LOAD DATABASE and LOAD TRANSACTION commands execution. This configuration parameter will default to 0 if "enable functionality group" is set to 0, and to 1 if "enable functionality group" is set to 1.


An UPDATE query running in a batch that includes a CREATE INDEX or UPDATE/DELETE STATISTICS or an UPDATE query running simultaneously with a workload that involves CREATE INDEX or UPDATE/DELETE STATISTICS may lead to data inconsistency.


If a query contains a join between partitioned tables and one of the partitioned tables degenerates to a single partition through dynamic partition elimination and there is a CIS table in the query, then a SEGV could occur in the PartNodeInfo::collocatedSite() method.


DDL is now replicated within user stored procedures.


In rare cases, a DUMP TRAN command is incorrectly allowed following a DUMP DATABASE command during which a partially-logged command like SELECT INTO was active that also commits some time towards the end of the DUMP DATABASE command. The partially logged operation will be lost when the database dump and transaction log are loaded.


Backup Server is enhanced to provide Multithread support needed for Tivoli Storage Manager options such as LAN-FREE. This support is off by default. It can be turned on by using the new –D8192 option during Backup Server startup. For example: ${BACKUPSERVER} -SSYB_BACKUP -I$SYBASE/interfaces -M${SYBMULTBUF} -D8192&


It is possible for a spid to terminate and a stack trace to appear in the SAP ASE error log containing the functions memset and bi__xml_query/bi_xmlextract. This can happen under heavy usage when the session heap memory pool has become starved.


DBCC CHECKSTORAGE does not detect LOB compression flag inconsistencies in the TIPSA. With DBCC CHECKTABLE and DBCC CHECKDB these types of inconsistencies were already being reported with message 15960.


The VERIFY option for the DUMP and LOAD commands does not give the user any indication of whether errors were found or not. The errors are currently reported only in the backupserver errorlog.


New feature that reduces the amount of recovery time during LOAD DATABASE at the expense of increasing the time taken by DUMP DATABASE. Data that is changed while DUMP DATABASE is active is included in the dump so that the dump has more up-to-date contents. This is enabled using sp_configure 'optimize dump for faster load', %lt; percentage %gt; . Changed data is included in the database dump when the percentage of database data changed during DUMP DATABASE is more than %lt; percentage %gt; . This defaults to 0 in which no changed data is copied, and there is no reduction in the recovery time of LOAD DATABASE.


For some special table names, REORG REBUILD and ALTER TABLE fail with an infected with 11 error on IdentifierType::IdentifierType.


Cluster deadlock occurs when process allocating a new page holding LLOL waits on WAIT_FOR_BASTPENDING. This issue only affects ASE Cluster Edition.


The incorrect message "The dump configuration ' %lt; value %gt; ' supplied for SELECT is invalid. The change is completed. The option is dynamic and ASE need not be rebooted for the change to take effect." may be reported by sp_config_dump with an option that is longer than the supported length.


If ALTER TABLE is used to add a NOT MATERIALIZED column %lt; c2 %gt; with a default, then another nullable column %lt; c3 %gt; is added to the table and REORG REBUILD the table, a query to the table will also assign the default to the column %lt; c3 %gt; .


In case of an exception, SAP ASE hits an error 1265 while aborting / rolling back the transaction. Abort or rollback of the transaction may happen because of some internal / external error. Error: 1265, Severity: 20, State: 1 An illegal attempt was made to release an invalid lock or a lock that is not owned by the process family.


REORG REBUILD %lt; table_name %gt; WITH ONLINE command, does not update the index create time-stamp(index_created field in sp_helpindex output) for the indexes rebuilt.


The "recovery prefetch size" configuration parameter is added to configure the lookahead size (in terms of log pages) in order for recovery to prefetch to-be-recovered pages. When set to 0, SAP ASE will automatically optimize the value.


When SAP ASE is booted with trace flag 7437 it will not switch from an OAM scan to an allocation page scan when an incorrect page count value in one or more OAM entries is found during boot time recovery and while calculating the free space page counts for a database.


Backup Server may occasionally report a spurious error when executing a DUMP or LOAD WITH VERIFY[ONLY], as a result of checking a page that is already deallocated. This is more likely to happen when the deallocated page belonged to compressed table.


Added new option SET PLAN SHARED ON and server wide param 'abstract plan sharing'. It enables Abstract Plan sharing between different users. Tables in the query with shared abstract plan must be explicitly prefixed with the owner name or belong to the DBO user.


The built-ins or stored procedures that rely on OAM for space accounting get blocked on an exclusive table lock on the table.


Sometimes an insert query with union view or derived table with union in which tables have check constraint, could cause a signal 11 (SIGSEGV) and a stacktrace in errorlog involving the function NormalizeScalar().


ALTER TABLE on a data compressed table may lead to heap memory (CPINFO pool) corruption. ASE stacktraces may be seen involving the functions kbfalloc() and cpinfo_allocbufs().


The Java Compile Suite layer in Adaptive Server that is responsible for UDF/ADT support and SQLJ queries execution towards the target JavaVM has been enhanced to allow the release of intermediate allocated Java objects. This was causing the JavaVM heap memory allocation to be exhausted under a heavy load application environment.


In some rare cases, accessing a system table could result in 8201 error being raised.


When running REORG REBUILD against a table whose name or any column name might form part of a reserved double or triple keyword phrase it is possible for an error 156 error to be reported along with error 11934 and for the REORG REBUILD command to abort.


When backup server is started with trace flag –D2048, the pages that have been allocated after the backup server built a list of pages to be archived and before the related allocation page is read by sybmultbuf, will be resent. Prior to dump a database one can run “SYB_BACKUP…qatraceon 105” that will add appropriate messages in the backup server error log when a resent has occurred.


The message, "Current process infected with signal 11", followed by a stack trace that includes the module ssql_release() or ssql_choose_victims() may be reported in the SAP ASE error log when the statement cache is full in a high concurrency SAP ASE environment.


The show_cached_plan_in_xml() function reports incorrect timings on the AIX platform.


Some user queries might cause segmentation fault with signal 11 when auditing and compatibility mode options are turned on.


In some scenarios, a database in single user mode could be used by a user session that is not expected to be using the database.


Under heavy network load, SAP ASE on the Windows platform may hang.


UPDATE skip uncommitted insert row caused ABAP like below output unexpected error message. (pseudo code) UPDATE row if (no rows found) INSERT row if (duplicate key) UPDATE row if (no rows found) ERROR out (assumption this should not be possible) The new feature is enabled when the new configure option "donot skip uncommitted insert" is set as 1.


ODATA provider uses JDBC connection string from a configuration file. End users may add their Jconnect parameters and values to this connection string. The connection string is manipulated by the odata producer to add certain required parameters for its correct operation before adding user supplied parameters to it.


The message "current process infected with 11" in the module 'LeBulkOpOpenCleanup' together with a stack trace which includes the module 'LeBulkOpOpen' may be reported in the error log while migrating data from one platform to another using sybmigrate.


Under rare circumstances, the SAP ASE Cluster Edition keeps running into a lock lookup error and may hang. In the SAP ASE errorlog there will be messages such as "Cluster lock manager of instance 1 has received an invalid lookup request for directory instance 1 from instance 4"


Enable a login with mon_role to execute sp_monitorconfig on SAP ASE 15.7


A 1265 error, "An illegal attempt was made to release an invalid lock or a lock that is not owned by the process family (lr= %lt; value %gt; , lrmagic= %lt; value %gt; )" together with a stack trace which includes the modules 'th_lct_admin' and 'num_logpages' may be reported in the error log if the builtin lct_admin("num_logpages", %lt; dbid %gt; ) is executed concurrently by several processes.


The nested level of functions in expressions has been raised from 10 to 32.


If 'literal autoparam' is enabled, the sometimes a print statement that uses a literal in a stored procedure could lead to remap error 2805 'Bad pointer 0x%p encountered while remapping stored procedure '%.*s'. Must re-create procedure.'.


Support of DDL replication for prepared DDL statements is now provided. This is enabled by trace flag 16984.


DDLGen generates duplicate partition values when a range or a list partitioned table has a local index


Add extra diagnostics for the data change fragment pool in order to help catch incorrect memory accesses of the data change fragment pool and thus also improve robustness.


The message "current process infected with 11" in the module 'pthread_kill' together with a stack trace will be reported in the error log on Linux platforms only, when the Java option is enabled, the Kernel mode is set to process mode, and the PCI option is disabled.


If 'stack size' is configured too small, sometimes it could lead to error, 'Stack guardword corrupted', with OmniQuickPass::generateSelect(), OmniQuickPass::generateStatement() in the stacktrace when select large number of columns for a remote table.


New 'force' option to the kill command to forcibly kill the spid.


Sometimes, sp_showplan may cause a signal 11 (SIGSEGV) with a stacktrace reported in the errorlog involving the function listChildQueries().


With a new set option 'set sqlnull on', string concatenation with NULL value will follow SQL standard, i.e. return NULL value


If 'procedure cache' is configured too small for a heavy loaded server, it could lead to stacktraces with s_chooselocks(), s_setup_lockrequest() and insert_to_heap().


"alter database" option "with check_only" does not warn about indexes having many duplicated key entries, which could cause shrink database to keep the table locked for unacceptable lengths of time while it sorts index entries. Knowing about these potential problems can help customers plan their work.


When log segment of a database exhausts and tasks involving page allocation are in progress, ASE could hit 804 error : "Unable to find buffer '0x..' from cache '...' holding logical page '...' in sdes '0x...' kept buffer pool for object '...'.


When a table is altered to have not materialized columns with default values, null values are sent to the Rep Server instead of the default values during the execution of an UPDATE command.


Altering an un-partition table with unique local index to a roundrobin partition table does not give an error.


Under rare circumstances SAP Adaptive Server Cluster Edition may report during the execution of sp_config_rep_agent an inaccurate run value for parameter 'bind to engine' on some nodes in the Cluster.


The message "Current process infected with signal 11" in the module NormalizeScalar() with a stacktrace which includes the modules PesState::PesInit() may be reported when executing an UPDATE...FROM query on a table that has immediate refresh pre-computed result set (PRS) defined on it.


Stack trace with error 622 may occur when running update statistics


MERGE triggers on DOL tables may return the incorrect number of rows for the inserted table: too few rows for the UPDATE trigger and possibly too many rows for the INSERT trigger.


Audit table records might be malformed or missing for table access events when auditing is turned on.


When using alter table not materialized with defaults replication needs to be supplied with the correct default values for log records created before the alter table if replication is behind in reading the log.


When a new plan for a procedure is installed, the accumulated metric LogicalReads in the monCachedProcedures table for the cached procedure maybe incorrect.


The maximum length of a user defined datatype (UDD), formerly restricted to the page size, is increased to the maximum size of a local variable of the same base type. See the output of DBCC SERVERLIMITS for the values of current limits.


When the RepAgent configuration parameter 'rs servername' is longer than 30 characters, the run value of that parameter gets corrupted in memory.


When RepAgent is configured to use multi-path replication thru the option ‘multithread rep agent’ and the number of replication paths is at least set to 2 thru the option 'max number of replication paths', in rare circumstances the replicated data between the primary and the standby databases may show inconsistencies resulting in data not being correctly replicated.


The SAP ASE Rep Agent thread sends float values ending in .0 without the .0 which makes them appear to be integers instead of floating point values. This can cause statement caching to create multiple plans for the same table leading to contention in the statement cache and degrading query performance.


A 10707 error “Unhandled Java Exception: …” may be reported by the PCA/JVM Security Manager when the JRE needs to internally process information on native methods properties while executing a user supplied method. In order for the PCA/JVM Security Manager to allow the execution of native methods the directive "-Dsybase.allow.native.lib=true" in the "pca_jvm_java_options" configuration must be set to true in the sybpcidb database.


When the SAP ASE builtin function ABS() is given a bigint or integer minimum value, a negative result is returned.


In cases where REORG DEFRAG or SHRINK DATABASE command encounters a signal 11 error, the table might not be usable by Level 0 scanners.


Backup Server: does not support syntax " dump ... with compression = 0" contrary to documentation.


Improve HK Chores cleanup processing after errors.


Under rare circumstances, shrinking a database can cause a subsequent recovery failure of that database. This is indicated by a message in the error log upon restart, saying that the object descriptor of object {N} cannot be installed. {N} may be 1, 2, or 28.


On the Hpia64 platform, when SAP ASE is running on a real cluster in threaded kernel mode, if the XP server of an instance is shutdown from an isql session on another instance, the isql session will hang.


Backup Server may wrongly issue the message, "The change is completed. The option is dynamic and SAP ASE need not be rebooted for the change to take effect", for an invalid configuration with a config_name more than the 30 bytes allowed.


sqlupgrade and upgrade for unix to have dynamic timeout.


If 'cis connect timeout' is exceeded, the local process with P_OMNI_TIMEDOUT set will continue to sleep.


Aborting a bulk page allocation process can give 'table already closed' error while closing SYSALLOCPG.


Memory usage keeps increasing when querying MDA tables in a loop in stored procedure.


When the default of a non-materialized column is altered on a table that is replicated, extraneous updates to that column may be sent for replication.


An incorrect index can be selected when a query contains a multi-column ORDER BY, if the avoid_bmo_sorts optcriteria is turned on explicitly or thru enabling the ase_current optimization level. If a sort is used below a nested loop join, and the ordering that the sort produced contains a unique key, and the ordering is extended by the nested loop join and eventually used to satisfy the ORDER BY, then this plan may be skipped if the avoid_bmo_sorts optcriteria is turned on.


TEXT/IMAGE data could be corrupted by byte-swap if the database once performed cross-platform database load on 15.0 ESD#2 or later version of SAP ASE, and the database was originally from a pre-12.0 version of SAP ASE.


set plan opttimeoutlimit does not follow the same rule as optgoal and optcritera for optimization and execution.


The message, "Current process infected with signal 11", followed by a stack trace that includes the module TcsState::tcs_merge() may be reported in the error log when optcriteria cr702725 is enabled and the query invokes referential integrity check and has an attribute in the ORDER BY clause which is not in the selection list.


Modify srvbuild[res] and syconfig.exe/sybatch.exe utilities to support Remote Dump Host Control.


Execution of stored procedures containing statements that are executed using deferred compilation causes the original SQL text in the monProcessSQLText MDA table to be replaced.


SAP ASE on AIX does not use 'Large Pages' with the configuration option of 'lock shared memory', resulting in suboptimal memory access


Boot SAP ASE with trace flag 9166 when dbcc logtransfer replication is used to diminish the likelihood of contention on the Network Memory Pool spinlock that can cause high CPU utilization when a user table is marked for replication. Don't use trace flag 9166 with Rep Agent replication because operations such as DDL replication or request functions won't work anymore.


srvbuild creates a sparse file for tempdb file system device


In rare circumstances the message "current process infected with 6" in the module '__systemcall' together with a stack trace which includes the modules 'jvmfini' and 'BRIDGEjvm_AbortJavaVM' may be reported in the error log during the execution of a UDF/ADT or SQLJ query.


A 15052 error, "Index error: Table id %lt; tabid %gt; , indid %lt; indid %gt; calculated %lt; name %gt; %lt; value1 %gt; does not match value %lt; value2 %gt; in Sysindexes." may be reported when running DBCC CHECKCATALOG on a database containing tables with option 'transfer table' on.


When the command: sp_online "engine", %lt; 42 %gt; .. fails, i.e due to OS resource issue, SAP ASE's listener will hang, preventing new connections to be established.


In rare cases a 692 error, "Uninitialized logical page ' %lt; pageno %gt; ' was read while accessing database ..." may be reported sometime after loading a database dump that was taken of a database in both Enterprise Edition and Cluster Edition, that had been created on devices with “direct i/o” turned on, or taken of a database in a Cluster Edition system only, that had been created on devices with “dsync” turned on.


The FIPS ciphersuites are stricter in OpenSSL not all ciphersuites that were supported by Certicom in FIPS mode are supported by OpenSSL.


DBCC CHECKALLOC may report an incorrect number of unreserved log pages after ALTER DATABASE LOG OFF fails to remove a log fragment because some of the pages to remove are allocated.


If a UDR roleid is greater than 1024 then a timeslice error may be reported in the SAP ASE errorlog.


Sybcluster needs to support remote dump host control.


In some rare cases, when DOL data pages are undergoing deallocation while table scans are concurrently executed on the table, inserts from other concurrent threads may incorrectly qualify to-be-deallocated pages. This may result in 7928 or other index corruption errors reported from DBCC CHECKTABLE.


Enhance DBCC REINDEX to support RID comparison mode change for empty deferred_allocation table.


The cache partition maximum value has been increased to 256. The MAX value in cfg_options has been updated to be applicable for all stored procedures.


Logging into remote server using a login user granted with a user-defined role will fail.


SAP ASE CE hangs when it cannot access storage devices due to a fencing or storage disconnect.


Enhancement that adds the possibility to add a cyclic redundancy check to a database or transaction dump created with compression (VERIFY=CRC), as well as to verify that the compression blocks can be correctly read and decompressed (WITH VERIFY=READ_AFTER_WRITE).


The message, "Current process infected with signal 11", followed by a stack trace that includes the module mda_calc_proc_hdr_mem_KB() may be reported in the error log while querying the MDA table, monProcessProcedures.


When sp_maplogin LDAP, NULL, 'create login' enables an authenticated LDAP user to create their own login and master database replication is enabled, the CREATE LOGIN statement on the replicate database gets error: "Message: 10331, State 2, Severity 14 -- 'Permission denied, database master, owner dbo. You need the following permission(s) to run this command: MANAGE ANY LOGIN. " The error is mapped to stop replication.


SAP ASE may hang when doing a disk mirror in some situations. The disk controller thread consumes 100% of the CPU utilization while the server hangs. Also, no new connections to the server can be established.


Backup Server introduces a remote access control feature that prevents remote dumps and loads and execution of remote procedure calls (RPC) from any client or server running on unauthorized servers. Local dumps are not affected by this feature. Authorization to dump or load, to or from Backup Server is achieved by including the authorized hosts in the host.allow access control file. The default location of hosts.allow file is $SYBASE. The location and name can be changed using the Backup Server parameter -h. This feature failed when the connection to the backup server was through a named pipe.


After shrinking database, DDLGen encounters the error message, "DDLGen started with the following .... Found 1 dbids with wrong number of rows cached in '#seginfo' v/s the rows in 'master.dbo.sysusages'".


Backup Server introduces a remote access control feature that prevents remote dumps and loads and execution of remote procedure calls (RPC) from any client or server running on unauthorized servers. Local dumps are not affected by this feature. Authorization to dump or load, to or from Backup Server is achieved by including the authorized hosts in the host.allow access control file. The default location of hosts.allow file is $SYBASE. The location and name can be changed using the Backup Server parameter -h. This feature failed when the connection to the backup server was through a AF_UNIX socket.


Stored procedures using "execute as caller" with queries that call builtin function ISNULL() and create and query #temporary tables fail with error: Msg 208, Level 16, State 1: Server ' %lt; servername %gt; ', Line 26: %lt; #temporary_table %gt; not found.


In an HADR configured server, "select * from monHADRMembers" may cause timeslice error like "timeslice -1001, current process infected at 0x15efbc4 (atomic_try+0x2)".


Killing a task which involves cursor or work tables might cause the server to hang, waiting for EX_LATCH on an allocation page on which EX_LATCH had been acquired by the same task before the 'kill' was issued on it. (A diagserver throws an 872 error).


A trigger defined on MERGE statement executing both INSERT and UPDATE actions may return incorrect rows for inserted table for the INSERT action. This happens if the same trigger is defined for both INSERT and UPDATE: "create trigger T on TAB for insert,update as ..."


In some cases an error may be reported in the SAP ASE errorlog, accompanied by a stack trace with the functions kbfalloc() and ptn__pdes_init_colupdcnt() in the stack.


When a table which is defined as compressed, and there is some fixed length column which is 'not null' and 'not materialized' in this table, update (index) statistics on this table may hit stack trace and SIGSEGV at decompress__column_by_colinfo().


INSERTs using normal page allocation running alongside operations using large-scale page allocation (LSA) scheme can overwrite the content put in by LSA operations in certain race circumstances between them.


A process can hang when executing ALTER DATABASE and DUMP DATABASE if another process goes to sleep when allocating a new page.


The text for error 9218 mistakenly stated sp_enable_rep_agent as opposed to sp_config_rep_agent in order to enable the Rep Agent for a given database.


Job Scheduler fails to schedule the job which does not specify end date and has the continuous_run property set.


Online database will fail with the message 2778, "The object 'sysdams' is not a table. Update statistics can be used only on user tables or system tables" if a cross platform database dump from a lower version that requires upgrade is loaded.


The DISK REMIRROR command hangs after simulating a disk I/O error on a mirrored device.


In rare circumstances the message "WARNING: memory usage in procedure headers (...) does not match memory usage count in Pss (...) for server process id ..." may be reported in the error log when the configuration options "enable functionality group" and "plan sharing" are active and the execution of a prepared statement is interrupted due to an error that caused the current transaction to be aborted.


A 702 error, "Memory request for NN bytes exceeds the size of single page of 16384 bytes. ASE is terminating this process", may be reported when using queries with tables that have more than 4192 partitions.


The builtin function MAX() may return an incorrect value when used with a compressed table.


During extreme insert load on APL tables with clustered index, during page allocation, server might hit error 8419 as : Error: 8419, Severity: 20, State: 3 Could not find index descriptor for objid 240003886, indid 0 in dbid 19.


Alter table add/drop partition command gets 4956 error while level 0 scans are active. This new feature is enabled when the new configuration option 'enable utility lvl 0 scan wait' is set.


UPDATE a column referenced by a materialized computed column after an ALTER table modifying a column may corrupt the computed column.


100001 faults (Invalid page ids in header) may be reported for DOL tables by dbcc checkstorage() if it's run after shrink database operation.


A 3478 error: "During undo the page timestamp value is less than new timestamp from log...", or a 3474 error: "During redo the page timestamp value is less than old timestamp from log...", or a 12337 error: "Page %lt; pageid %gt; in database %lt; dbname %gt; was incorrectly found to be uninitialized when it was read. Recovery of this database cannot continue." may sometimes be reported during recovery if the server crashed while a transaction doing a CREATE TABLE operation was rolling back.


In HADR configuration: 1. If the length of hostname and port number together are equal to or more than 30 characters, login redirection fails. 2. SAP ASE runs into different issues when server options are changed using sp_serveroption for HADR_GROUP class(17) entry in sysservers.


After loss of ASE_ENCRYPTION license, DROP ENCRYPTION KEY generates a segmentation violation and stacktrace.


The command ALTER DATABASE will fail silently to extend a database that is offline if the database dump is from an SAP ASE version where the table SYSDAMS did not exist.


SAP ASE running in process kernel mode may hang waiting for disk IO completion.


Signal 11 in alt__lock_fix_computedcol


The error IO_UNCOMPRESS_BUF_E, "The 'uncompress' call failed for database/archive device while working on stripe device %lt; filename %gt; with error number 0 (The operation completed successfully)." could be raised by sybmultbuf when using a block size bigger than the default.


Avoid a rare race condition in the SAP ASE buffer handling that may result in an 839 - "Grabbed buffer dirty but not writing: %lt; buffer info %gt; " error.


Job scheduler upgrade sometimes hit this error failing Job Scheduler to boot : "Execution of rule check_jsc_state failed because of errors parsing the source text in syscomments during upgrade. Please drop and recreate dbo.check_jsc_state"


When DOL data pages are undergoing deallocation and table scans are concurrently executed on the table, inserts from other concurrent threads may incorrectly qualify to-be-deallocated pages. This may lead to error: "12316: Attempt to garbage collect a deallocated data page 13407 in table 'table1_PDR', database 'onlinedb'. Aborting the transaction" could be seen.


A dynamic sql statement with a LIKE and ESCAPE or builtin with more than one declaration in a where clause could have a performance issue if the plan is removed from procedure cache.


Logical cluster failback without a failover leaves the logical in a timed_wait state.


Alter table split/ move partition on a table followed by drop column with no datacopy can cause data corruption.


When tracing systabstats values using trace flag 2701, during UPDATE STATISTICS operations that reference non-clustered indices, the command may be aborted due to printing an uninitialized float value.


DUMP DATABASE CUMULATIVE will silently fail when the auditing configuration option is turned on.


Various errors like 206, 4701, 247 maybe given when using EXECUTE AS CALLER procedure with select into a temporary table or create index statements.


A segmentation violation followed by a stack trace that contains the module strtok_r() will be raised at boot time on a Windows SAP Adaptive Server Enterprise if the configuration option 'enable dump history' is enabled and the file configured in 'dump history filename' exists but it's empty.


installTemplateXml.bat fails with EOF error


The sybdumptran utility has been enhanced to switch automatically to the mirror of a log device when opening the primary log device fails. The metadata file used by sybdumptran must be a dump that has been made using an SAP ASE version that contains the current fix.


The message "current process infected with 11" in the module 'getpage_with_validation' together with a stack trace which includes the modules 'apl__startscan' and 'startptnscan' may be reported in the error log when the stored procedure sp_helpdb is run and its execution is interrupted.


CREATE and ALTER DATABASE FOR LOAD initialize the database allocation pages when it's unnecessary.


If update statistics is used on a table with a large number of partitions (e.g. 1000), then the performance declines significantly, and an inordinate number of log records are created.


The connection to a backup server can be rejected if the client host has multiple IP addresses and the entries in the target backup server hosts.allow file are not authorizing the first remote IP address. Likewise, the connections will be rejected if the host name used in the first column of the hosts.allow file specifies a host alias different from the actual host name.


The command "select * from monHADRMembers" sometimes returns 0 rows when executed on a standby member of an HADR cluster.


A 422 error, "Too many nested expressions or logical operators to compile. Try splitting query or limiting ANDs and ORs." may be reported during the execution of a SELECT query that uses an abstract plan and references a table with more than 2000 range partitions.


A 3474 error: "During redo the page timestamp value is less than old timestamp from log." and other miscellaneous errors can be encountered upon loading a transaction log dump containing a CREATE INDEX transaction on a table that has compressed data and nonmaterialized columns having default values.


If JS Agent hits some inconsistency in operation then Job Scheduler auto restart attempts may enter into an infinite loop.


When the monDeviceSpaceUsage table is queried concurrently from different processes, SAP ASE running with threaded mode might report a SIGSEGV (infected with 11) error that mentions the function mda__init_FSList() on the IBM AIX platform.


When a rule is created which is not compatible with the column to which it is bound, SAP ASE generates an error message when it tries to insert a value. After raising the error, an infected with 11 (SIGSEGV) along with a stack trace is reported in the SAP ASE errorlog.


DDLGen not displaying SAP ASE errors raised during execution


Job Scheduler may go down during HADR deactivation.


A Parallel query that uses a shared worktable may result in a 940 error "Dbtable in wrong state for Operation" and the process being terminated.


Loading a transaction dump created with NO_TRUNCATE will fail with a 4334 error, 'Specified file is out of sequence...' if it is loaded after a cumulative dump has been loaded.


In rare circumstances, a 2601 error, "Attempt to insert duplicate key row in object ' %lt; name %gt; ' with unique index ' %lt; index name %gt; '", may be reported during the load of an 12.5 database in a 15.7 dataserver.


HADR deactivation process can fail or get delayed due to transactions started by housekeeper and checkpoint tasks.


HADR deactivation operation should not wait for open transactions belonging to non-replicated databases to be completed.


monSysStatement does not show stored procedure when executed with another statement.


If a database is dumped after an "alter database log off" command has failed, that database dump may produce an incorrect disk map after being loaded.


SAP ASE might report a SIGSEGV stacktrace in mda_flush_iostats() when "enable monitoring" is set to 1.


Support to create non-clustered local index in parallel for partitioned table with some empty partitions.


Dump database with protected password ('with passwd = ') option only worked if specified in all lowercase letters.


In ASE 15.7 SP110 and above, under certain circumstances on AIX only, SAP ASE may erroneously produce the message "Message empty." while attempting to clean up after a previous failure.


Job Scheduler prints incorrect restart count while auto restarting.




REORG REBUILD cmd may take more time than before if table have TEXT/IMAGE/UNITEXT columns.


The LOAD DATABASE CUMULATIVE command succeeds incorrectly, rather than failing with a 4334 error, 'Specified file is out of sequence...', if the cumulative dump is loaded after loading a transaction log dump that was dumped before the cumulative dump.


When RepAgent is configured to use multi-path replication where two paths are having a different set of transactions bound to them, the replication flow between the primary and the standby databases may stop working if this setup is used in conjunction with a warm standby setup.


There is high spinlock contention on the dbt_spin for some user workloads even when not using multiple databases.


ASE hit SEGV in ct__tds_fetch_cache_cols() and crashes.


In rare circumstances, the execution of Java User Defined Functions (UDF) could mistakenly ignore the arguments it expects when these are presented to it through a single argument that holds a white space separated string.


Error 247:"Arithmetic overflow during implicit conversion of %lt; type %gt; value %lt; value %gt; to a %lt; type %gt; field ." can be seen while running stored procedure sp_spaceusage on large table.


An SAP ASE task keeps sleeping in remote i/o state even if the connection terminates while the SAP ASE task is executing a query to the remote SAP ASE. This problem may occur if the client program executes a query accessing a proxy table. You have to kill the spid manually.


sybatch:Failed to Create Self Managment login/user


Correct an 814 error situation (Keep count of buffer '0x%lx' in cache '%.*s' holding logical page '%u' in database '%.*s' has become negative).


Sometimes a long running transaction can be seen in tempdb for $sort_local which results in tempdb filling up if a large data set needs to be sorted.


Server crash after writing the commit log during merge partition or online create index can cause data corruption. Pages deallocated during merge partition were getting allocated to same or other tasks even before merge partition is over.


Trace flag 7795 will force a union query to return results in a sorted order. The sort order is determined by the order of the projection list.


If the DUMP DATABASE is run on a database, a 691 error, "Encountered invalid logical page %lt; page id %gt; while accessing database %lt; database name and id %gt; , object %lt; object name and id %gt; , index %lt; index name and id %gt; , partition %lt; partition name and id %gt; . This is an internal system error. Please contact Sybase Technical Support.", might be reported when running SELECT INTO cmd to create a proxy table in this database.


On the Windows platform, an SAP ASE server might fail to start up if it uses the -r option to specify the mirrored device. dcmpmirror and kdactivate messages are reported in the SAP ASE errorlog.


New option 'config_bs' for the built-in function hadr_admin() to add an entry to the hosts.allow file.


When creating a new 8k or 16k page SAP ASE using syconfig (Windows) or srvbuild(res) (Unix) and additionally setting up PCI at the same time, SAP ASE may not have enough memory to boot.


New feature request to allow DUMP TRANSACTION to use the options WITH VERIFY=CRC and VERIFY=READ_AFTER_WRITE as well as LOAD TRANSACTION WITH VERIFY[ONLY]=CRC. These options are applicable only at DUMP TRANSACTION time if the option WITH COMPRESSION is also used. Likewise, the CRC verification at LOAD TRANSACTION time is only applicable if the transaction dump is created with the CRC verification option as well.


Alter table split/ move partition on a table followed by add non materialize column can cause data corruption.


'REORG REBUILD WITH ONLINE' may fail with error 806 (Could not find virtual page for logical page %lt; page# %gt; in database ' %lt; dbname %gt; '.), if the table has undergone an 'ALTER TABLE DROP COLUMN WITH NO DATACOPY' operation.


When the SAP ASE kernel mode is configured as process and an SSL session/connection is abruptly killed/aborted, a SIGSEGV (infected with 11) with a stacktrace may be reported in the SAP ASE errorlog. The functions drop_connection() and ssl_nclose() are likely to be seen as part of the stacktrace.


If there are more than 32 columns in the GROUP BY list, and more than 6 tables in the query then the query plan performance could be signficantly different than equivalent queries which have less than or equal to 32 columns in the GROUP BY list. The optcriteria cr752225 eliminates the discontinuity in query plan selection/performance when the threshold of 32 columns in the group by list is passed.


sp_hadr_admin activate may report Msg 18703, "Please execute the procedure 'sp_hadr_admin' from master database."


A data truncation error may occur when executing a query on the monTableColumns table and retrieving the value of the Description or Label columns in the Japanese language using an SAP ASE server that is configured to use the utf8 character set.


In rare case, if DOL table has unique index, concurrent dmls may hit index corrupt(error 12313 "Insert into page id %lt; page # %gt; of index id %lt; index # %gt; of table ' %lt; table name %gt; ' (id = %lt; id # %gt; ) in database ' %lt; db name %gt; ' tried to replace undeleted RID ( %lt; %gt; , %lt; %gt; ) at slot %lt; slot # %gt; and ridposn %lt; # %gt; . Try dropping and recreating the index.")x.


In rare circumstances, a 3474 error, "During redo the page timestamp value is less than old timestamp from log....", may be reported during boottime or LOAD DATABASE recovery, when a transaction that allocated a page, rolled back that allocation while a checkpoint was active.


Under some rare condition, when statement cache is on, a parameter bound to a value is not sent back the correct new value.


In rare circumstances, the message "current process infected with 11" in the module ‘ocm_hold’ together with a stack trace which includes the modules ‘des_has_onlutl_active’ and 'checkpoint’ may be reported in the error log by the process doing 'CHECKPOINT' in a Cluster Edition SAP ASE environment.


If upgrading from 15.7 GA or ESD#1,2,3 to 15.7 SP60 or 15.7 SP121, SAP ASE may encounter a segmentation fault error in the function upgd__find_basic_depends() during open database.


A segmentation violation occurs when the config option enable xact coordination is set to 0 and a connection is established between a primary and secondary server.


When the SAP ASE server is out of locks, a permission check can cause the error message "ulpspinlock: spinlock order violation" to be reported followed by a crash the SAP ASE server.


In rare circumstances, an infected with 11 (SIGSEGV) may be reported in the SAP ASE error log together with a stack trace that includes the modules 'rec_dynamic_prefetch()' and 'rec_undo_session()' when recovery is being run at boot time or during LOAD DATABASE or LOAD TRAN.


The error "table still open - dbid %lt; value %gt; table id 58" or the error 12330, "An attempt was made to fetch logical page %lt; value %gt; with partition ID '58', ..." followed by a stack trace that contains the module 'closetable' may be reported when the database option 'allow cumulative dumps' is enabled.


Stacktrace could happen during showplan (LeScanOp::_LeOpShowBloomFilterInfo(char*)) or in LeSarg::mapSarg() for hash semijoin query plan when pushdown bloom filter for the hash join is used.


The message "current process infected with 11" in the module 'cpynodes' together with a stack trace which includes the modules 's_copytmps' and 'batch_loopend' may be reported in the SAP ASE error log when a BATCH INSERT into a temporary table is executed, followed by 6103 and 703 error while SAP ASE attempts to free procedure cache memory.


A 644 error "Index row entry for data row id ( %lt; page# %gt; , %lt; row# %gt; ) is missing from index page %lt; page# %gt; of index id %lt; value %gt; of table ' %lt; name %gt; ' in database 'name'. Xactid is ( %lt; page# %gt; , %lt; row# %gt; ) ). Drop and re-create the index." may be reported when a clustered index on a Data Locked Only table permits duplicate keys and the index refers to pages with logical page numbers higher than the value of 2147483647.


DDLGen failed and showed error 'UDM51: java.sql.SQLException' if syslanguages.langid %gt; 99


SAP ASE running on Windows platforms may report the following message in the SAP ASE errorlog early on during startup: "kernel KERNEL structure not padded correctly - size = 1736". This message may be safely ignored, and this CR prevents it being reported.


For internal use.


Tracing optimizer behavior may not use the correct indentation when printing plan fragments


In a long running SAP ASE server configured for SSL, SSL handshake errors due to memory allocation failures appear for new incoming connections.


In an HA environment, when the same user tries to login on both primary and companion server at the same time then the login process occassionally hangs.


A segmentation violation occurs when sp_listener starts an SSL listener where no SSL listeners had been started previously.


SAP ASE running on Unix/Linux platforms only prints the top 25 stack frames in a stack overflow stacktrace report which could mask the root cause and also provide insufficient diagnostics when a stack overflow is caused by a recursive function. If the stack overflow backout code uses too much stack, the backout process can cause stack guard word corruption resulting in server shutdown. This CR removes the limitation on number of frames in the stacktrace and if the stack overflow backout code use of the stack reaches within 4K bytes of the stack boundary, it then initiates forcible termination of the task to prevent stack guardword corruption. The default value of 'stack guard size' is increased by 4K bytes to retain earlier level of stack availability. Traceflag 3687 provides a stacktrace when a transaction is aborted due to insufficient stack space that can provide additional diagnostics on stack usage by the query. Traceflag 3686 disables this change. This change is not applicable to the Microsoft Windows platforms.


In rare circumstances Online REORG / ONLINE CREATE INDEX may hit SIGSEGV when table contains compressed row but table is marked as not compressed.


When using ALTER DATABASE, an 806 error, "Could not find virtual page for logical page %lt; page# %gt; in database ' %lt; dbname %gt; '..." may be reported if ALTER DATABASE removes more than a single fragment from the end of the given database.


When an insert trigger exists on the target table of the MERGE statement, the wrong result may happen.


On Microsoft Windows platforms an isql session may hang when establishing an SSL connection to an SAP ASE.


An SAP ASE shutdown occurs after hitting a SIGSEGV (infected with 11). In the SIGSEGV message in the SAP ASE errorlog the faulting address may reference the function uppushaffinity().


In some rare conditions, error 8201 - "Keep count of descriptor (objid= %lt; objid %gt; , dbid= %lt; dbid %gt; ) was expected to be %lt; n %gt; . Instead %lt; m %gt; was found.", error severity 26, state 1 might be raised during high availability failover accompanied by a stack trace in the SAP ASE errorlog with the functions des_do_get()/ha_session_check() in it.


On the AIX platform, when SSL is enabled, after a few thousand connections, connection failures occur and error message "ks_falloc: Cannot allocate using ubfalloc" appears in the SAP ASE errorlog.


A 331 error, "Query is too complex and has exhausted the name space for Ordering IDs, please breakup query into simpler components.", may be reported during a complex query with multi-tables especially using aggregates and allrows_dss optgoal.


Client connections to SAP ASE may hang when SSL is enabled and the network memory pool is exhausted.


After upgrading from SAP ASE 15.7 SP100 to a higher version and re-running installmaster, configuration parameter 'engine local cache percent' may not be configurable through procedure sp_configure.


In some cases, a DML command is not correctly replicated because SAP ASE Replication Agent may mistakenly generate the table schema definition for metadata reduction for a table that is marked for replication. Schema building is needed when the table is created or altered in the same user transaction as the DML which affects the same table.


SAP ASE may enter a CPU intensive loop after a SIGSEGV (infected with 11) at ktMuxThreadTick+0x24d with the following seen in the errorlog: "Returning from kmultimap_iterator_cleanup with lock held" and "Attempting to return from utpApplyAll while holding a multimap read lock (0x %lt; address %gt; ). The lock will be released"


When using LDAP, an assertion message and a SIGABRT/SIGIOT (infected with 6) stacktrace may be reported in the SAP ASE errorlog. The assertion will say "result == SYBCSI_RESULT_OK, file core/source/csimemory.c". The stacktrace will include the function login__ldapauth().


The DUMP DATABASE command may hang when run concurrently with a many other tasks if the option 'optimize dump for faster load' is set to a non zero value.


The message "timeslice -501, current process infected" in the module 'ra_ms_get_object_filters_for_path' together with a stack trace which includes the modules 'ra__ms_apply_repfilters' and 'ra_ms_get_object_filters_for_path' may be reported in the error log by the SAP Replication Agent scanner thread for the default path when the filter distribution model is used.


When text is bound to a different cache than data for a given table, back-linking text partitions via dbcc shrinkdb_setup() can produce bad links.


A 644 error, "Index row entry for data row id ( %lt; pageid %gt; , %lt; rnum %gt; ) is missing from index page %lt; index_pagenum %gt; of index id %lt; indid %gt; of table ' %lt; tablename %gt; ' in database ' %lt; dbname %gt; '. Xactid is ( %lt; xactid %gt; ). Drop and re-create the index." may sometimes be reported in heavily concurrent systems using DATAROWS LOCKED or DATAPAGES LOCKED tables.


A 213 error, "Insert error: column name or number of supplied values does not match table definition." may be reported in a stored procedure, when deferred compilation is active, if a column is added to a table and there is a dependency on "select * " behavior to ignore the extra column. Trace flag 7798 will ignore this error if deferred compilation is turned on and allow normal compilation to process the statement. If normal compilation still sees an inconsistency, or some other activity causes re-resolution of the stored procedure, then errors may be still be reported.


Sometimes, error 7705 could be raised unexpectedly for LIKE predicate with ESCAPE clause if there is a same letter in LIKE and ESCAPE clause, but one is an upper case letter and the other is a lower case letter.


When shared memory size exceeds 1TB, sp_shmdumpconfig might report error 265, "Insufficient result space for explicit conversion of INT value '1382954' to a CHAR field.".


A timeslice error followed by a stacktrace that includes the modules stphd_release_last_mvcc_histogram(), stphd_release_unreferenced_mvcc_histograms() and stu_nosort_range() may be reported in the error log in a heavily loaded system during the CREATE INDEX operation when using hashing.


LIKE optimization does not happen for a ? + ? pattern that is used in a prepared statement.


Add 'Proc Cache Header' diagnostic enhancements for the block pool to capture the time spent in bitmap scanning and collect memory allocation/free patterns. These diagnostics are disabled by default.


In some rare scenarios, a utility command modifying a table and waiting for a level 0 scanner on the table to exit, might not respond to a client killing the session where a utility command is executed.


A timeslice error, followed by a stacktrace that includes the module memshrink(), may be reported in the SAP ASE errorlog during a sort operation on a very large data set.


A 4720 error, "Cannot truncate table %lt; tablename %gt; because there are one or more isolation level 0 scans, or REORG command, active on the table", may be reported during a TRUNCATE TABLE command while level 0 scans are active. This new feature is enabled when the new configuration option 'enable utility lvl 0 scan wait' is set.


When running on a table with thousands of partitions, create local nonclustered index or placement index command may fail due to stack overflow with no error message printed.


The message, "Current process infected with signal 11", followed by a stack trace that includes the module s_recompile() may be reported in the error log when a table schema change happens after processing the first row, and before finishing the second row of an dynamic batch INSERT.


DDL commands within prepared statements can now be replicated.


When using data encryption functionality on Windows platforms, encryption operations can make an engine stall for short periods of time.


When a process that is executing a DUMP DATABASE command is killed either using the KILL command or using CTRL-C or the SQL session goes away, the Backup Server will not release its associated resources until it finishes copying the whole database. One of the consequences is that the archive devices can remain locked for a long time because the sybmultbuf processes stay alive.


A poor query plan might be selected when parallel UPDATE STATISTICS (for instance using the consumers phrase) is used to gather statistics. After installing SAP ASE with the fix for this issue, update statistics will need to be run on affected tables.



  • 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


SAP Adaptive Server Enterprise 15.7 ; SAP Adaptive Server Enterprise 15.7 Cluster Edition


CR, ASE 15.7 SP121, ASE 15.7, SP121, Adaptive, Server, Enterprise, Fix, Patch, Error, 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.