Sunday, October 30, 2011

Note 1636936 - 11g Wrong results with star_transformation_enabled = true

Summary

Symptom

A query returns wrong results.

The amount of rows returned by the query differs depending if star transformation is used or not.

Other terms

wrong results, bug 12827166, 11.2.0.1, 11.2.0.2

Reason and Prerequisites



Oracle bug

12827166 - WRONG RESULT WITH STAR TRANSFORMATION WITH TEMP TABLE

is the root cause for this problem.

Oracle versions 11.2.0.1, 11.2.0.2 and 11.2.0.3 are affected.

You may be hitting this bug if:

  • star transformation is enabled
    star_transformation_enabled = true or
    star_transformation_enabled = temp_disable
  • execution plan has index range predicate with equality in start or stop key
Solution

Oracle bug 12827166 is fixed in the following SAP Bundle Patches / Oracle patch collections:

11.2.0.1:
As 11.2.0.1 is no longer supported the patch for Oracle bug 12827166 will not be made available for 11.2.0.1.

11.2.0.2:
UNIX SBP 11202x_date ( date >= 201110 )
UNIX SGR 11202x_date ( date >= 201110 )
UNIX SXD 11202x_date ( date >= 201110 )
WIN 11.2.0.2.nP ( n >= 12 )

Workaround:

turn off star transformation using
alter system set star_transformation_enabled = false scope=both;

Attention:
Please be aware that turning off star transformation will lead to decreased performance of your BW queries.

We strongly recommend to upgrade to 11.2.0.2 and apply the SAP Bundle Patch / Windows Patch Collection containing the patch for Oracle bug 12827166 as soon as possible.

Header Data



Release Status:Released for Customer
Released on:14.10.2011 12:20:15
Master Language:English
Priority:HotNews
Category:Program error
Primary Component:BC-DB-ORA Oracle
Secondary Components:BW-SYS-DB-ORA BW ORACLE

Thursday, October 27, 2011

Note 1105619 - You cannot import Support Package Stacks

Summary

Symptom

After you implement Note 1055217, you can no longer import any BI Support Packages (exception, Support Package Stack 13 = BI Support Package 15).

Other terms

BI, SNOTE, HotNews, important

Reason and Prerequisites

Note 1055217

Solution

--- The technical problems have been solved ---
--- You can import Support Package Stacks again ---

Due to a technical problem with the correction instructions for Note 1055217, BI 7.00 Support Packages up to and including Support Package 14 temporarily cannot be imported without errors. The note cannot be implemented either. Notes with a higher Support Package validity (that have already been imported) than the Support Package to be imported cannot be updated.

Since the notes cannot be updated, the system cannot run the Data Warehousing Workbench or load data after you import a Support Package.

We strongly recommend that you do not import any Support Packages, up to and including Support Package 14, until the technical problems have been solved. We are working on a solution for this problem and we apologize for any inconvenience caused.
You can solve this problem by importing Support Package 15 (Support Package Stack 13).

This note will provide information about when you can import Support Packages again as soon as it is possible to do so.

Header Data



Release Status:Released for Customer
Released on:22.10.2007 12:20:39
Master Language:German
Priority:HotNews
Category:Program error
Primary Component:BW SAP Business Information Warehouse

Note 1266144 - ZDATE_LARGE_TIME_DIFF with AIX 5.3 TL7,TL8 and AIX 6.1

Summary

Symptom

On your SAP System you get a lot of ZDATE_LARGE_TIME_DIFF errors and as a consequence you might observe a SAP system down situation.

Reminder:

Since you might have upgraded your system since the last DST change to AIX 5.3 TL7, AIX 5.3 TL8 or AIX 6.1 TL1, you might be endangered to hit the problem described in this note, if you did not apply at minimun the service packs as described below. Therefore make sure your system is at the recommended level before the DST change occurs in your country.

Reason and Prerequisites

Due to a defect which is corrected by the IBM APARs IZ22211, IZ22212 and IZ22292, for certain timezone settings some api's return time/date information which might show the change from summer time a few days earlier than expected. The SAP Kernel might detect this inconsistency under certain conditions and throws short dumps with the symptom ZDATE_LARGE_TIME_DIFF. This error might occur in every time zone.

The error is related to the version of the fileset bos.rte.libc. If the version of the fileset belongs to the Releases AIX 5.3 TL7 and TL8 and AIX 6.1 and has lower version as documented below you might be affected.

Solution

The fix for the problem is implemented in:

AIX 5.3 TL8 SP2

AIX 5.3 TL7 SP4

AIX 6.1 TL1

The operating system will report the OS level with the command:

oslevel -s

You should also check the version of the filesets bos.rte.libc and bos.adt.prof with the following commands and make sure they are on the recommended level:

AIX 6.1:

lslpp -L bos.rte.libc -> should be at least 6.1.1.1
lslpp -L bos.adt.prof -> should be at least 6.1.1.1

AIX 5.3 TL8:

lslpp -L bos.rte.libc -> should be at least 5.3.8.2
lslpp -L bos.adt.prof -> should be at least 5.3.8.2

AIX 5.3 TL7:

lslpp -L bos.rte.libc -> should be at least 5.3.7.5
lslpp -L bos.adt.prof -> should be at least 5.3.7.5

More information is available on following WEB sites:

http://www14.software.ibm.com/webapp/set2/subscriptions/pqvcmjd?mode=18&ID=4428

http://www14.software.ibm.com/webapp/set2/subscriptions/pqvcmjd?mode=18&ID=4427

http://www14.software.ibm.com/webapp/set2/subscriptions/pqvcmjd?mode=18&ID=4429


Please download and install the according Fix from:

http://www-933.ibm.com/eserver/support/fixes/

Those fixes were recommended as High Impact in the Technical Support Bulletin - UNIX in June 2008. If you are not yet subscribed to this service please do so on:

http://www14.software.ibm.com/webapp/set2/subscriptions/pqvcmjd

Header Data



Release Status:Released for Customer
Released on:26.02.2009 07:48:59
Master Language:English
Priority:HotNews
Category:External error
Primary Component:BC-OP-AIX IBM AIX

Wednesday, October 26, 2011

Note 1413928 - Index corruption/wrong results after rebuild index ONLINE

Summary

Symptom

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
This note is released as a Hot News.
You must check the note regularly for updates. Otherwise, you will not be aware of important changes regarding prerequisites, consequences and solutions in the latest release. If this note is updated, no new Hot News is issued.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Change log:

  • 17.06.2010: New Version of Checkscript attached
    New version contains 2 scripts,
    • check_index_all.sql - for run the check over all tables/indexes
    • check_index_one.sql - for run thec check for only 1 table
  • 11.12.2009: Checkscript attached
  • 04.12.2009: Restriction "Validity for Oracle 10 only" removed. The problem can occur on all Oracle releases with rebuild online
  • 03.12.2009: Note released as Hot News



If there is a heavy concurrent change activity on a table during online index rebuild, the index CAN get corrupt missing keys.

Consequences:

  • a select via a problematic index does not terminate with an error but potentially returns to few rows
  • attempts to delete or update table rows that are not present in the index anymore lead to errors
  • if a unique index is affected, duplicate keys in the table are possible if a row with a key is inserted, that is already in the table but was lost in the index. Recreation of the index will lead to ORA-01452 "cannot CREATE UNIQUE INDEX; duplicate keys found"
Other terms

Wrong Results, Corruption (Index), ORA-08102 / ORA-01499,
ORA-00600 [kdsgrp1], ORA-00600 [qertbFetchByRowID], ora-01452

Reason and Prerequisites

Wrong results or the next errors can be produced by SQL statements:

ORA-8102 by a delete/update
ORA-1499 by "analyze table validate structure cascade"
ORA-600 [kdsgrp1]
ORA-600 [qertbFetchByRowID]

This is Oracle Bug 7329252 which is fixed in Oracle release 10.2.0.5.

Solution

Install the relevant patch for your platform.
You can find this on SAP Service Marketplace in the software center under: http://service.sap.com/swcenter-3pmain in the following directories:

Oracle 10.2.0.4

Based on the announced Patch release strategy (see SAP note 1137346) all already released single patches and merge patches will be removed from the SAP Service Marketplace and substituted by the SAP Bundle Patch (SBP). You will find the currently released SBP in SAP note 1137346.

MS Windows (32-bit)
MS Windows Itanium (64-bit)
MS Windows x86-64 (64-bit)

Patch 7329252 will be included in one of the next
Windows patch collection for Oracle 10.2.0.4.


Oracle 10.2.0.2

Based on a conflict with a still recommended Mergefix (see SAP note 1020225) an new Mergefix is requested where 7329252 is included.

For information about availability, see SAP Note 1020225.


Oracle 9.2.0.8

AIX 5L with Oracle 64-bit
/Oracle/Oracle 64-Bit/Oracle 9.2.0. 64-Bit/Oracle 9.2.0.8. 64-Bit/
AIX_5L_64/p7329252_92080_AIX64-5L.zip

HP-UX PA-RISC 64-bit
/Oracle/Oracle 64-Bit/Oracle 9.2.0. 64-Bit/Oracle 9.2.0.8 64-Bit/
HP_UX_64/p7329252_92080_HP64.zip

HP-UX Itanium 64-bit
/Oracle/Oracle 64-Bit/Oracle 9.2.0. 64-Bit/Oracle 9.2.0.8 64-Bit/
HP_IA_64/p7329252_92080_HPUX-IA64.zip

LINUX 32-bit
/Oracle/Oracle 32-Bit/Oracle 9.2.0. 32-Bit/Oracle 9.2.0.8. 32-Bit/
Linux/p7329252_92080_LINUX.zip

LINUX x86-64
/Oracle/Oracle 64-Bit/Oracle 9.2.0. 64-Bit/Oracle 9.2.0.8. 64-Bit/
Linux_x86_64/p7329252_92080_Linux-x86-64.zip

SUN Solaris 64-bit
/Oracle/Oracle 64-Bit/Oracle 9.2.0. 64-Bit/Oracle 9.2.0.8 64-Bit/
SOLARIS_64/p7329252_92080_SOLARIS64.zip

Windows 32-bit / Windows 64-bit (Windows 2003)
6826661 ist ab Patch29 für Oracle 9.2.0.8 enthalten.
Für die Verfügbarkeit siehe SAPNet Hinweis 539921.



Checkscript:

Attached to this note a checkscript is provided that counts via each index and via table the number of rows in the table. In case of a difference the different number of table and index rows are returned meaning that the error described in this note was found.
Tables are processed in alphabetical order. A logfile is written. Processing time can be several days. The script is restartable. No resources are locked. To check the DB with the script:

  • unzip the attachment
  • place check_index_all.sql and check_index_one.sql in a directory on the DB server
  • change to directory the scripts were copied to
  • connect to sqlplus with / as sysdba
  • enter "create directory NOTE_1413928 as '';"
    Replace with the OS directory scripts were copied to
  • enter "Grant read, write on directory NOTE_1413928 to " ;
  • leave sqlplus


Run script check_index_all

  • call: sqlplus "/ as sysdba" @check_index_all.sql
  • The script will request two input parameters:
    • directory:
      enter NOTE_1413928
    • maximum_parallel:
      depending on the hardware of the machine and the load; if you choose a too high or too low value you can terminate the script later and restart it with another parallel degree


Run script check_index_one.sql
This script has to be executed using the SAP schema owner!

  • call: sqlplus @check_index_one.sql
  • connect with SAPSR3 or whatever the schema owner is defined.
  • The script will request three input parameters:
    • directory:
      enter NOTE_1413928
    • maximum_parallel:
      depending on the hardware of the machine and the load; if you choose a too high or too low value you can terminate the script later and restart it with another parallel degree
    • table_name:
      the check will run only for that table and all its indexes


Check the logfile

    • before table processing is started the tablename is written to the logfile.
    • if an index-table row count mismatch is detected the count via table and index is written to the logfile. Search in the logfile for keyword 'Table' for this kind of errors.
      In case of this error the sql statement to recreate the index is written to the index_check*.sql file. Attention: Don´t drop and recreate unique indexes while the SAP System is running.
    • if any ORA error comes up during processing the tables the error is written to the logfile and processing continues with the next table. Search the logfile for keyword 'ORA-' for this kind of errors. Attention: the problem this note was created for results during check usually NOT in an "ORA-" error.


Remarks:

  • dbv does not detect this kind of corruption because the index blocks are valid Oracle blocks. Only a crosscheck between table and index is able to detect this kind of corruption.
    A crosscheck is done e.g. by the command "analyze table validate structure cascade online;". For details how to check the DB with this command check note 23345.
  • As long as the fix is not applied it is not safe to try to get rid of the corruption by a further "rebuild online".
    Because a "rebuild offline" will read the corrupt index with missing rows it will not help, too.
    Currently it is investigated if the "create online" shows the problem, too. Until further notice we therefore strongly recommend not to create indexes with the "online" option. Only a drop/create index without the online option guarantees to get a non corrupt index, if the index to be recreated is already corrupt.
    ATTENTION: DO NOT DROP AND CREATE UNIQUE INDEXES WHILE THE SAP SYSTEM IS USED.
  • Don´t do mass index rebuilds with the online option until the
    bug is fixed. Especially don´t use reports like RSORAISQ, RSORAISQN etc.

Header Data



Release Status: Released for Customer
Released on: 17.06.2010 11:09:52
Master Language: English
Priority: HotNews
Category: External error
Primary Component: BC-DB-ORA Oracle
Secondary Components: BW-SYS-DB-ORA BW ORACLE

Tuesday, October 25, 2011

Note 29321 - Creating traces for BR Tools

Summary

Symptom

To be able to analyze a problem in a BR Tool (brarchive, brbackup, brconnect, brrestore), you need to determine trace information in addition to the normal log information.

Other terms

Debugging

Reason and Prerequisites

As a rule, the information written in a normal log file is sufficient for finding the source of a problem. Therefore, a trace is mostly required only for Development Support. In individual cases (for example, to determine a long-running SQL statement as part of a call of a BR Tool or to determine the actual environment where the tool runs), activating the trace may also make sense outside SAP development.

Caution: Restrictions

  • Activate the trace in exceptional situations only, if you know exactly which consequences the activation of the trace will have.
  • Note that the system sometimes writes an extremely high volume of trace data. For this reason, the file system needs to be sufficiently large and the size of the trace file needs to be monitored.
  • Most trace information can be interpreted correctly only by development. Only a part of the information (such as executed SQL statements or environment settings) can be analyzed usefully outside of development.
Solution

You can activate a trace of the BR Tools by setting the environment variable BR_TRACE = or by setting the parameter "-TRC ". The following trace levels exist:

  • Trace level 1:
    Tracing the calls of external programs (for example, dd, sqlplus):
    • Command lines of external calls
    • Output of external calls


Note: In BRCONNECT and BRSPACE, trace level 1 causes SQL statements to be traced (like on trace level 2) which does not include the comprehensive selections of the database objects in the initialization phase.

  • Trace level 2:
    Tracing SQL statements:
    • SQL commands called
    • Output of SQL commands
  • Trace level 4:
    Tracing the call of internal functions:
    • Private C-functions called
    • Return codes of private C-functions called
  • Trace level 8:
    Output of environment information:
    • All call options
    • All environment variables

The trace levels can be combined. Trace level 3 (1 + 2) means that both the calls of external programs and SQL commands are logged.

The trace information is written to the detailed log of the program. They are an enhancement of the normal log.

Example:
--------
UNIX:
setenv BR_TRACE 15
Windows:
set BR_TRACE=15

Header Data



Release Status:Released for Customer
Released on:04.10.2011 14:46:05
Master Language:German
Priority:Recommendations/additional info
Category:Consulting
Primary Component:BC-DB-ORA-DBA Database Administration with Oracle

Note 819829 - Oracle Instant Client Installation and Configuration on Unix

Summary

Symptom
Oracle Instant Client in SAP Environments

This note describes how to install and configure the Oracle Instant Client in an SAP environment on Unix and Linux platforms.

For Windows platforms, please refer to note 998004.

Other terms


Oracle Instant Client
Easy Client
Instant Client Basic
Instant Client Light

Reason and Prerequisites


The currently used Oracle Instant Client is not up-to-date. You need to download and configure the current version of the Oracle Instant Client.

Solution


The Oracle Instant Client contains the complete Oracle client software required for an SAP system in an easy-to-install way. Oracle Instant Clients replace the full client installations ("Oracle-Home-based client") that were required prior to Oracle release 10.2.

Choosing the Recommended Oracle Instant Client Version


An Oracle Instant Client must be installed for SAP Kernels linked with Oracle release 10.2, 11.2 or higher.


General recommendations:

  • SAP customers must use only the instant client versions released for SAP from the SAP Service Marketpace. The use of Oracle Instant Client versions that are available on OTN is not supported.
  • SAP customers are strongly advised not to create their own patched versions of the Oracle Instant Client. Updated versions of the instant client are made available for download on the SAP Service Marketplace if this is required.
  • All SAP application servers of an SAP system should run with the same version of the instant client. Running a mix of different instant client versions in one SAP system is not recommended.
  • There are also some dependencies between SAP BR*Tools versions and Oracle instant client versions. See below 'Configuring Oracle Instant Client 11.2 for SAP BR*Tools 7.20'.


Choosing between Oracle Instant Client 10.2 and 11.2:

  • For database release 11.2.0.2 (and above), Oracle Instant Clients of release 11.2.0.2 are available.
  • For database releases 10.2.0.X and 11.2.0.1, Oracle Instant Clients of releases 10.2.0.4 or 10.2.0.5 are available.


Support of Oracle Instant Clients:

  • Oracle Instant Clients of release 10.2.0.2 are no longer supported.
  • Oracle Instant Clients of release 10.2.0.4 are supported until end of July 2011. Please see SAP note 1339724 for details.
  • Oracle Instant Clients of release 10.2.0.5 are supported after end of July 2011 only under the conditions of Oracle Extended Support. Please see SAP note 1110995 for details.


Replacing Oracle Instant Clients:

  • SAP Kernels that are linked with Oracle 10.2 (7.XX, 640_EX2) can use Instant Clients of release 11.2.0.X.

    Instant Clients of release 11.2 are downward compatible with Instant Clients of release 10.2. Therefore, it is technically possible to use an Instant Client of release 11.2 in an SAP installation where the SAP kernel is linked with Oracle 10.2.
  • When you replace the 10.2 instant client on the SAP application server with the 11.2 instant client you have to ensure that the software requirements for the new instant client version are met. Check the software requirements in the Database Client Installation Guide for your platform in the Oracle Database Documentation Library for Release 11.2 [http://www.oracle.com/pls/db112/homepage]
  • For minimum SAP kernel version required with Instant Client 11.2 see SAP note 1331586. If you have an too old SAP kernel installed, you get 'ORA-24315: illegal attribute type'.




Downloading Oracle Instant Client Software


The following Oracle Instant Client DVDs are available:

  • Oracle Client 11.2 DVD

    This DVD (Mat# 51038966) contains the Oracle Instant Client 11.2.0.2 software for the following platforms: AIX5L, HP-UX PA RISC, HP-UX Itanium, Linux x86 (32-bit), Linux x86_64, Solaris SPARC, Solaris x86-64, MS Windows (32-bit), MS Windows x64
  • ORACLE Client 10.2.0.5 DVD

    This DVD (Mat# 51041000) contains the Oracle Instant Client 10.2.0.5 software for the following platforms: AIX5L, HP-UX PA-RISC, HP-UX Itanium, Linux x86 (32-bit), Linux Itanium (64-bit), Linux x86_64, Linux on Power (64-bit), Solaris SPARC, Solaris x86-64, MS Windows (32-bit), MS Windows Itanium (64-bit), MS Windows x64
  • Oracle Client V5 10.2.0.4 DVD

    This DVD (Mat# 51039412) contains the Oracle Instant Client 10.2.0.4 V5 software for the following platforms: AIX5L, HP-UX PA-RISC, HP-UX Itanium, Linux x86 (32-bit), Linux Itanium (64-bit), Linux x86_64, Linux on Power (64-bit), Solaris SPARC, Solaris x86-64, MS Windows (32-bit), MS Windows Itanium (64-bit), MS Windows x64


To download Oracle Instant Client DVDs for SAP environments, go to the Oracle download area of the SAP Service Marketplace:

[https://service.sap.com/oracle-download]

In the right panel under 'Software Download', follow the links 'Oracle Software' -> 'Installation' -> '' -> 'Oracle' .

Filenames of Oracle Instant Client Packages for SAP


Instant client packages use the following naming conventions:

OCL.SAR

For example:

OCL10232.SAR (32-bit platform, Release 10.2.0.X)
OCL10264.SAR (64-bit platform, Release 10.2.0.X)
OCL11232.SAR (32-bit platform, Release 11.2.0.X)
OCL11264.SAR (64-bit platform, Release 11.2.0.X)

Oracle Instant Client Default Path and Symbolic Link


The default path for the installed instant client in an SAP environment is:

  • Instant Client Release 10.2:
    /oracle/client/10x_/instantclient
  • Instant Client Release 11.2:
    /oracle/client/11x_/instantclient


By default, that path is a symbolic link pointing to a directory:

  • Instant Client Release 10.2:
    /oracle/client/10x_/instantclient_
  • Instant Client Release 11.2:
    /oracle/client/11x_/instantclient_


is either '64' for 64-bit platforms or '32' for 32-bit platforms like Linux 32-bit.

Examples:

  • 64-bit platform and instant client release 10.2.0.4:
    /oracle/client/10x_64/instantclient (= symbolic link)
    /oracle/client/10x_64/instantclient_10204 (= directory)
  • 64-bit platform and instant client release 11.2.0.2:
    /oracle/client/11x_64/instantclient (= symbolic link)
    /oracle/client/11x_64/instantclient_11202 (= directory)


During an SAP installation SAPINST automatically installs the instant client as described above for all new installations based on the 7.00 kernel (and for 6.40-based installations on the IBM PPC platform).

Starting with Oracle release 10.2 it does not make any difference whether the SAP system is a central system (DB/CI) or only an application server. SAPINST installs the instant client in both cases. SAPINST furthermore installs the instant client on the database server, since this is a prerequisite for the BR*Tools version 7.00 to be started as the
adm user.

In the following scenarios the Oracle Instant Client needs to be installed manually as described in the following section:

    1. The database was upgraded to Oracle 10.2 or newer.
    2. The PREPARE phase of the upgrade to release 7.00 has to be run.
Configuring Oracle Instant Client 11.2 for SAP BR*Tools 7.20


SAP BR*Tools Release 7.20 are based on release 10.2 and therefore expect the Oracle Instant Client to be installed in the default path for the 10.2 instant client '/oracle/client/10x_64/instantclient'. Therefore, in order to use the 11.2 instant client with SAP BR*Tools 7.20, (temporarily) create the following additional symbolic link:

OS> ln -s /oracle/client/11x_64 /oracle/client/10x_64

This link is needed only until SAP BR*Tools Release 7.20_EXT are available which then will be based on 11.2 instant client. As soon as SAP BR*Tools Release 7.20_EXT are available, you can replace SAP BR*Tools 7.20 by SAP BR*Tools 7.20_EXT and remove the link again.

For a more detailled description of dependencies between SAP BR*Tools and Oracle instant client versions see SAP note 1638356.


Manually Installing the Oracle Instant Client in an SAP Environment


Please keep the following in mind when manually installing or updating the Oracle Instant Client:

  • It is recommended to extract the instant client package following the defaults defined by SAP (see previous section).
  • NEVER extract or copy instant client packages to directories '$ORACLE_HOME/lib' or '$ORACLE_HOME/bin'.
  • The library search path ('LD_LIBRARY_PATH', 'SHLIB_PATH', 'LIBPATH') MUST refer to only one instant client directory. It MUST NOT contain more than one instant client directory or any Oracle Home directory ('$ORACLE_HOME/lib'), regardless of the order.
  • Under no circumstances set the environment variable ORA_NLS10 for the adm user.
  • Before you replace an instant client with a newer version, stop all your SAP systems, SAP application servers, and any other processes that use the instant client.

    Never replace an instant client of an SAP system while the system is up and running!


Perform the following steps for manually installing a new version of the Oracle Instant Client:

    1. Download the instant client software DVD from the SAP Service Marketplace as described in section "Downloading Oracle Instant Clients" of this note.
    2. Create the directory for the instant client software, if that does not already exist:

    For release 11.2 clients:
    OS> mkdir -p /oracle/client/11x_64

    For release 10.2 clients:
    OS> mkdir -p /oracle/client/10x_64
    3. Change to this directory and extract the instant client package with

    OS> SAPCAR -xvf OCL.SAR

    This results in a directory 'instantclient_'
    4. Create a symbolic link from 'instantclient_' to 'instantclient' with the following command:

    OS> ln -s instantclient_ instantclient
    5. On SAP systems with kernel 7.00 (or above) and ABAP Stack or Double Stack, execute the following additional steps:

    Check if the SAP DBSL can load the newly installed instant client correctly. Change to the
    exe directory as user adm and run the ldd command on dboraslib.so:

    OS> ldd dboraslib.so

    If that succeeds, verify that the SAP system is able to connect to the database with

    OS> R3trans -x

    Otherwise, if
    ldd cannot resolve all libraries, then verify the value of the library search path for the adm user. It should be set as:

    For release 10.2 clients:
    /usr/sap/SID/SYS/exe/run:/oracle/client/10x_64/instantclient
    For release 11.2 clients:
    /usr/sap/SID/SYS/exe/run:/oracle/client/11x_64/instantclient
    6. On SAP systems with kernel 7.00 (or above) and Java Stack or Double Stack, execute the following additional steps:

    Update all references from the J2EE engine to the JDBC driver jars such that they point to the JDBC driver in the instant client directory. This is described in detail in SAP note 867976.

Verifying the Client Operation Mode



With 'genezi -v' you check whether the instant client is running in 'instant client' mode or 'Oracle home' mode.

Note: The client must operate in 'Instant Client' mode. If not, check that the client that is installed is complete, check that the environment is correct and ensure that no other Oracle clients are installed in the library search path.

The instant client is operating in 'Instant Client Mode' if the output is similar to the following example:

OS> ./genezi -v
Client Shared Library 64-bit - 11.2.0.2.0

System name: Linux
Release: 2.6.32.12-0.7-default
Version: #1 SMP 2010-05-20 11:14:20 +0200
Machine: x86_64

Operating in Instant Client mode.
Small timezone file = timezone_14.dat
Large timezone file = timezlrg_14.dat

OS>

In the following example the instant client is running in 'Oracle Home' mode:

OS> ./genezi -v
Client Shared Library 64-bit - 11.2.0.2.0

System name: Linux
Release: 2.6.32.12-0.7-default
Version: #1 SMP 2010-05-20 11:14:20 +0200
Machine: x86_64

Operating in ORACLE_HOME environment.
Small timezone file = /oracore/zoneinfo/timezone_14.dat
Large timezone file = /oracore/zoneinfo/timezlrg_14.dat

OS>

If data shared library libociei.so is not found, then the client operates in 'Oracle Home' mode.

Determining the Oracle Instant Client Version


There are several ways to determine which instant client version is installed and used by the SAP system:

  • Option 1: Use the genezi utility

    Goto the instant client directory and run 'genezi -v':
    OS> cd /oracle/client/11x_64/instantclient
    OS> ./genezi -v

    If you receive an error like 'error while loading shared libraries: libclntsh.so.11.1: cannot open shared object file: No such file or directory', check your environment variable LD_LIBRARY_PATH (LIBPATH, SHLIB_PATH).
  • Option 2: SAPIC_README

    Starting with release 10.2.0.4, the Oracle Instant Clients released for SAP may be identified by a unique instant client version. The instant client packages built for SAP contain a readme file called SAPIC_README with the following information:
    • SAP Instant Client version
    • Oracle release
    • installed Oracle patches
    • build date
    • platform
  • Option 3: SAP transaction SM51

    As of SAP kernel 7.00, you find the instant client version in the 'SAP Release Information'.

    In SM51 (SAP Servers), click button 'Release Notes' and search for 'Database Client Library'.
  • Option 4: SAP transaction SM50

    As of SAP kernel 7.00, you find the instant client version in all work process logs (SM50).

    Example:
    Oracle Client Version: '10.2.0.4.0'

    As of SAP kernel 7.10, you find the instant client version in all work process logs (SM50) including client subversion Vn and all installed client patches.

    Example:
    Oracle Client Version: '10.2.0.4.0', V5


Please note that the instant client versions are not synchronized across platforms. In particular, instant clients with identical versions may contain different bug fixes on different platforms.

Oracle Instant Client Compatibility Matrix


The Oracle Instant Client interoperates with any database version that the full Oracle Client interoperates with. For details please see Metalink Note 207303.1: Oracle Client / Server Interoperability Support

Installing the Oracle Instant Client for Secondary Connections


If you manually install the Oracle Instant Client on a system to open secondary connections to an Oracle instance, you need to make sure that the Oracle Net Services files sqlnet.ora and tnsnames.ora both exist and that the environment variable TNS_ADMIN points to the directory location of these two files.

Header Data



Release Status:Released for Customer
Released on:10.10.2011 09:04:11
Master Language:English
Priority:Recommendations/additional info
Category:Installation information
Primary Component:BC-DB-ORA Oracle
Secondary Components:BC-DB-ORA-SYS Database Interface / DBMS for Oracle

Monday, October 24, 2011

Note 1069957 - Restarting delete phase with partially deleted data

Summary

Symptom

This note deals with the following symptoms:

  • An archiving request terminates in the delete phase. If you repeat the delete phase, the request terminates again because the number of data records found according to the current deletion criteria no longer corresponds with the number of originally archived data records. This is because data records were deleted from the InfoProvider the first time the run terminated.
  • When the delete phase begins, the data that the request stored in near-line storage is visible to the query access. If the delete phase terminates and the status of the archiving request has not been changed (that is, the request status still has value "50 Verification Phase Ended Successfully"), the near-line data remains visible to the query.
  • When you reload several archiving requests to a DataStore Object in parallel, an inconsistency may occur in the status management of BI archiving: The full selection executed in field PARTCOND of table RSDADAPPART (that is, all completely archived and not yet reloaded archiving requests) is incorrect. As a result, when you attempt to archive the data again, the system displays message RSDA 226 "Selected area already completely archived".
  • In an 'ARCHIVE' type process step (short description: "Archive Data from an InfoProvider"), a new archiving request should be created and it should continue to a set target status. However, after the processing step has finished, the archiving request is in status "10 Request Generated", regardless of the set target status. When an existing archiving request continues, the set target status is likewise not reached. Instead, the system carries out another phase of the archiving request only. This symptom occurs only if the data archiving process data is stored in an ADK archive.
Other terms

Package RSDA, message RSDA 226

Reason and Prerequisites

Prerequisites:

This note is relevant only for archiving with a data archiving process. It does not apply to archiving in Release 3.x.

Solution
  • SAP NetWeaver 7.0 BI

Import Support Package 15 for SAP NetWeaver 7.0 BI (BI Patch 15 or SAPKW70015) into your BI system. The Support Package is available when Note 991095 "SAPBINews BI7.0 Support Package 15", which describes this Support Package in more detail, is released for customers.


In urgent cases, you can implement the correction instructions as an advance correction.

You must first read Note 875986, which provides information about transaction SNOTE.

To provide information in advance, the notes mentioned above may already be available before the Support Package is released. In this case, the short text of the note still contains the words "Preliminary version".

Header Data



Release Status:Released for Customer
Released on:06.05.2008 18:24:03
Master Language:German
Priority:Correction with medium priority
Category:Program error
Primary Component:BW-WHM-DST-ARC Archiving

Sunday, October 23, 2011

Note 887972 - RSC1_DIAGNOSIS always writes 'Error During Analysis'

Summary

Symptom

The RSC1_DIAGNOSIS report creates this error message at the end of the log entry: 'Error During Analysis' even though the other logging did not record any errors at all.
The correction stops the error message at the obsolete place.

Other terms

OLTP, extractor, data extraction, DataSource, Service API, SAPI,
F2, ROOSOURCE, screen 1010, GETTID, GOTTID, ARFCSSTATE, TRFCQOUT

Reason and Prerequisites

This is due to a program error.
When the program was created as an analysis tool for development, Delta LUWs were managed using TIDs. It has now become unnecessary because of status management and now creates the error message unnecessarily when fields are not filled accordingly. It does not, however, have any importance in this case.

Solution

You require Service API 7.00 Support Package 05 to correct the problem in the affected source system. The attached composite SAP note gives information about which software components contain Service API 7.0 and the names of the Support Packages of these components. Alternatively, you can also transfer the preliminary correction from the appendix. In the BW system, the correction is only necessary if the BW system is affected in its role as a source system for itself (Myself connection) or for another BW system. Caution: Service API is an internal component. It is not delivered separately, but as a part of other software components: PI, CRM, PI_BASIS and some other. For each SAPI correction note, a composite SAP note is created, which contains information about which Support Packages of the software components mentioned earlier contain the SAPI correction. However, the composite SAP note is only released on the release date of the corresponding SAPI Support Package. Different SAPI versions are delivered for Basis Releases 3.1I, 4.0B, 4.6F, 6.20 and 6.40. The version for 4.0B is also valid for R/3 Releases 4.6B and 4.6C.

Header Data



Release Status:Released for Customer
Released on:28.09.2011 14:05:35
Master Language:German
Priority:Correction with low priority
Category:Program error
Primary Component:BC-BW BW Service API
Secondary Components:BW-WHM-DST Data Staging

Note 764707 - Performance in Business Workplace

Summary

Symptom


This note describes the factors that affect the performance in the Business Workplace, and ways in which you can improve the performance:

The performance in the workflow inbox depends on several factors:

    1. Use of organizational objects (O, S ...) for tasks
    If agent assignment for tasks is controlled using organizational objects, a structural explosion is necessary. Complex organizational structures can mean that the time required to construct the inbox is greater. This is carried out once a day for each user when the user logs on initially, and the information is then buffered. As a result, the initial construction of the inbox takes the most time.
    2. Number of work items in the system
    The time required for selecting work items for a user increases with the number of work items that exist in the system.
    3. Number of work items that are displayed in the workflow inbox or in the subordinate views.
    4. Use of dynamic columns
    The dynamic columns are filled on a task-specific basis with content that is determined dynamically during runtime. To do this, it is necessary for the system to read the work item container and then to determine the attributes to be displayed, for example, of an business object.
    Displaying the dynamic columns greatly affects performance, since the system accesses both the work item container and application tables.
    5. Grouping according to contents, content type and sort key
    Each work item carries the two container elements _WI_Object_ID (dominant object) and _WI_Group_ID (Grouping characteristic) to its container. Both elements are defined so that an object reference can be included.

    Grouping according to content and content type is based on the container element _WI_Object_ID, and grouping according to sort key is based on _WI_Group_ID. For each of these grouping types, the system needs to access the container for each work item to read the object reference. In addition, the system must determine the default attribute of the respective object, which involves accessing the application tables.
    6. Showing the columns group object and work item contents
    As above, showing the two columns is based on the container elements _WI_Object_ID and _WI_Group_ID. The system determines the values to be shown by reading the work item container and the default attribute of the relevant object.
Other terms

SBWP


Solution
    1. Detail the assignment of tasks in the organizational model.
    2. Archive work items that are no longer needed (see Note 49545).
    3. In the Business Workplace, BAdIs are available for the following purposes:
      a) WF_BWP_SELECT_FILTER
      This BAdI enables you to limit the number of the work items displayed by filtering. It is mainly suited to scenarios where all users are working on the same inventory of work items (for example, call center).
      (see Note 765783)
      b) WF_BWP_DYN_COLUMN
      Hiding the dynamic columns improves performance in the Business Workplace.
      If this is not possible, you can implement the BAdI WF_BWP_DYN_COLUMN to determine the values of the dynamic columns directly from the application data. The BAdI is available with Note 848382.
      c) WF_BWP_OBJ_ATTRIBUTE
      With this BAdI, it is possible to set the default attributes of the dominant object (_WI_Object_ID) and the grouping characteristic (_WI_Group_ID). The default attributes are used for grouping according to content, and grouping according to sort key and for hiding the group object column and work item content.
      The BAdI is available with Note 848382.
    4. It is also advisable to implement Note 848382 (or one of the corresponding Support Packages) if you do not want to implement either of the BAdIs. The note also contains an optimization that affects the determination of the object references in the container elements _WI_Object_ID and _WI_Group_ID.

Header Data



Release Status:Released for Customer
Released on:06.10.2011 08:03:05
Master Language:German
Priority:Recommendations/additional info
Category:Performance
Primary Component:BC-BMT-WFM-WLC Worklist Client
Secondary Components:BC-BMT-WFM Business Workflow

Note 1082749 - WF: Performance issue in RH_PBUILD_WORKFLOW

Summary

Symptom

Several calls to the function RH_PBUILD_WORKLFOW will lower the performance of the process which is calling this function.

This occurs under others

  • in the report RSWUWFML2 where the function RH_SUBSTITUTES_GET is called several times. The function RH_SUBSTITUTES_GET calls the function RH_PBUILD_WORKFLOW.
  • in the report RSWNUWLSEL when this report is executed in FULL mode
Other terms

SBWP, RSWUWFML2, RSWNUWLSEL, SAPLRHAS, PERFORMANCE

Reason and Prerequisites

Reason: a buffer is not correctly initialized

Solution

Import the Support Package or implement the correction according to the attached correction instructions.

Header Data



Release Status:Released for Customer
Released on:06.10.2011 08:06:07
Master Language:English
Priority:Correction with medium priority
Category:Program error
Primary Component:BC-BMT-OM Organizational Management
Secondary Components:BC-BMT-WFM Business Workflow

CRM-BF-WFI Workflow Inbox

Note 1527154 - Status-dependent successor job is incorrect

ummary
Symptom

A job (job B) is scheduled as a status-dependent successor job to job A.
Therefore: Job B is to run only if job A was completed successfully.
If job A has the status 'Terminated', job B should not run and should also receive the status 'Terminated', as well as an entry in the job log stating why the job did not run.
However, you notice that the successor job ran even though the predecessor job has the status 'Terminated'.

Other terms

Successors

Reason and Prerequisites

There is a program error. This is a side effect of Note 1479702.

Solution

Import the Support Package or implement the correction instructions.

Header Data



Release Status:Released for Customer
Released on:11.10.2011 12:34:20
Master Language:German
Priority:Correction with high priority
Category:Program error
Primary Component:BC-CCM-BTC-RUN Runtime Environment for Background Processing

Note 1411877 - New standard jobs

Summary

Symptom

When you schedule standard jobs using transaction SM36 and choosing "Standard jobs", some jobs that are recommended in Note 16083 are missing.

The following jobs are involved:

    1. Job name: SAP_CHECK_ACTIVE_JOBS

Report: BTCAUX07

Description: Check Status of Active Jobs

Note: 1169524

    2. Job name: SAP_DELETE_ORPHANED_IVARIS

Report: BTC_DELETE_ORPHANED_IVARIS

Description: Delete "Orphaned" Temporary Variants

Note: 1021775

    3. Job name: SAP_REORG_ORPHANED_TEMSE_FILES

Report: RSTS0043

Description: Consistency Check: File System-TemSe, Table TST01 (with Deletion)

Note: 936049

    4. Job name: SAP_REORG_PRIPARAMS

Report: RSBTCPRIDEL

Description: Delete obsolete print parameters

Note: 999951

    5. Job name: SAP_SPOOL_CONSISTENCY_CHECK

Report: RSPO1043

Description: Consistency check spool/TemSe

Note: 98065


Solution
    1. Use transaction SNOTE to implement this note.
    2. Call transaction SM36 and choose "Goto -> Standard jobs" to schedule the reorganization jobs.

IMPORTANT: In the Basis Releases 4.6C to 7.02, note that you must first deimplement this note before you import the following Support Packages:

46C SAPKB46C60 - SAPKB46C62
620 SAPKB62068 - SAPKB62070
640 SAPKB64026
700 SAPKB70018 - SAPKB70024
701 SAPKB70107 - SAPKB70109
702 SAPKB70204 - SAPKB70208



------------------------------------------------------------------------
|Manual Post-Implement. |
------------------------------------------------------------------------
|VALID FOR |
|Software Component SAP_BASIS SAP Basis compo...|
| Release 620 SAPKB62059 - SAPKB62069 |
| Release 640 SAPKB64023 - SAPKB64027 |
| Release 700 Until SAPKB70023 |
| Release 710 Until SAPKB71012 |
| Release 701 Until SAPKB70108 |
| Release 702 Until SAPKB70207 |
------------------------------------------------------------------------

    1. Use transaction SE91 to create the following message in the message class BT:

889 All standard jobs are already scheduled.

    2. Use transaction SE38 to create the following text symbol for the program SAPLBTCH:

822 Update reorganization job information

Header Data



Release Status:Released for Customer
Released on:13.10.2011 15:31:40
Master Language:German
Priority:Correction with medium priority
Category:Program error
Primary Component:BC-CCM-BTC Background Processing
Secondary Components:BC-CCM-PRN-TMS TemSe (Repository for temporary sequential objects)

BC-CCM-PRN Print and Output Management

BC-ABA-TO Log.DB, Selection Screens, Selection Variants

Note 365304 - CC-ADMIN: Reports for deleting tables

Summary

Symptom

The deletion of a client (by using Transaction SCC5) takes too long. Before you copy a client, you want to delete extensive tables in the target client in order to obtain better performance.

Additional key words

SCC5, clientremove, client delete, long runtime

Cause and prerequisites

There is no optimal deleting algorithm that ensures stability and performance on all databases and for all tables. In a conflict case, stability takes precedence in the standard system.

For this reason and in order to avoid resource problems, the standard system deletes the tables in packets. However, needless database accesses, which can take very long, may occur (FULL TABLE SCAN).

A FULL TABLE SCAN sometimes is the best access method and the Optimizer of the database can select this access method. This depends for example on the number and the size of the clients and on the status of the statistics. However, this access is very unfavorable if the system contains a large client having a smaller client number than the target client. This can even cause performance problems if the target client itself is small.

Under ORACLE, for example, you can usually avoid a FULL TABLE SCAN by switching to 'Rule based optimizer' (optimizer_mode = rule in init.ora). Sometimes there is no solution for other databases; or other deleting algorithms hold more advantages.

Solution

Refer also to Note 70643.

Subsequently, you must always call Transaction SCC5 in order to delete the client completely.

Unfortunately, SAP cannot supply a general optimum solution for the efficient deletion of a client.

SAP provides a number of tools. You have to decide which tool suits you best.

If you have significant experience of the methods described and have evaluated how useful (or not) they are, please let us know. If applicable, we shall include your experiences into this note or into our standard programs.

To do this, we need the following information:
- The Basis Release version with the relevant Support Package,
- the database you use and its version number,
- the names of the tables,
- the size of the tables in client and system,
(To determine the size, you can e.g. use report YSTABSIZ from Note
118823.),
- the order and the scale of the clients in the system.

For deletion of critical tables, this note provides several special reports which optimize the deletion.

Alternatively, you may use the R3trans with option 'clientremove' (Refer to Note 68896; Solution; 1.a). For problems and restrictions regarding the R3trans, consult the corresponding documentation and the corresponding notes.

If you use DB2 for OS/390, you can also proceed according to Note 143998.

    1. For tables with less than 2.000.000 rows in the client (or for tables whose entries in the client fit completely into the roll area of the database (Key word: ROLLBIG refer to Note 12621).

Using report YKDELCLS as a template, you can create a report which deletes a group of tables. You will need the name of the client field of each table. You can find the names by using Transaction SE11.

    2. For databases having limited space for the rollback area (for example ORACLE having MULTI-LEVEL CONSISTENCY LOCKING SEMANTICS)

If you have a Basis Release prior to Release 6.1, you can create the attached report 'ZTABDELE' for critical and large tables. To do this, you must replace all XXXX in the text by the name of the table. You can do this best in the ABAP Editor via 'Find and Replace' (binoculars icon or 'STRG + F').

The report then optimizes the reading in blocks from the database for this table (In order to avoid problems regarding rollback areas and working memory usage, the system has to delete in blocks in order to be able to send commits. To do this, the system has to read the complete data records prior to Basis Release 6.1. As of 6.1 or in report 'ZTABDELE' however, the system only needs to read the key fields.)

You can optimize the report for your system and your table via parameter NROWS (in the source code). With increasing size the runtime shortens; however, the demands on working memory (of the application server) and on rollback size (in the database) increase, too. In addition, the possibility of a TIME OUT increases.

    3. For databases with row logging (for example DB2/390 and INFORMIX)

The attached report ZSDELTAB locks the table system-wide. You thus only use it if it is possible to access the table exclusively. Generally, you should run it over night or during the weekend.

The report is well suited if large clients exist that have a smaller client number than the target client.
Please be aware that this report does not work correctly in the DEBUG mode, since every COMMIT removes the lock. This may cause problems with LOGGING.

    4. For tables whose second key field shows low selectivity

The attached report ZSDELDIS deletes all table entries with identical second key field in groups. If e.g. the second key field contains the company code and the system has three company codes, the table is deleted in three steps. Therefore only the particular largest company code needs to fit into the rollback area of the database.

If the second key field is very selective (if e.g. it contains a time stamp), the report should not be used, since it would delete every single line individually. Furthermore the report must not be used for POOL and CLUSTER tables.

    5. Delete in blocks with OPEN CURSOR

The report ZSDELCUR writes the key fields of the table entries in blocks into an internal table. After the block is deleted, a COMMIT is executed. During this COMMIT, a OPEN CURSOR WITH HOLD is used to determine the beginning of the next block. In this way, you can avoid

a FULL TABLE SCAN.
This can yield particular performance advantages under DB2/390, for example.
However, keeping a cursor open via a COMMIT does not correspond to the ANSI standard. Under Oracle, for example, this code may cause an

ORA-1555 "SNAPSHOT TOO OLD", if the table was not reorganized or if there are too few rollback segments. Compare solution 2.b) of Note 96296.

Reports ZSDELTAB, ZSDELDIS and ZSDELCUR generate a report named ZDELnnnn (nnnn are the first four characters of the table name) to delete the table transferred as parameter; this report is then executed and deleted afterwards. If the report is not deleted, because the program terminated, you can delete it in the initial screen of SE38 (select 'Local object' in the popup).

If you have already started a deletion run (by using Transaction SCC5), which processes the same table, you should exit this deletion run. If you use several parallel processes (as of Release 4.6), you can also call report ZSETONPROCESSED for this table first; subsequently you can exit the process that processes the table (for example via Transaction SM50). The other processes will then delete all tables except for this one.

You can start the deletion reports parallel, but only one per table.

Reports YKDELCLS, ZSDELDIS and ZSDELTAB should be scheduled as background processes, since otherwise a TIME-OUT may occur.

In reports ZTABDELE and ZSDELCUR, you can increase the value for variable NROWS in the program in order to read and delete more rows in one action. However, this increases the request to the rollback area and the main memory of the application server. The width of the table and the size of NROWS influence the memory requirement in a linear way.

Header Data



Release Status:Released for Customer
Released on:26.09.2011 10:27:03
Master Language:German
Priority:Recommendations/additional info
Category:Performance
Primary Component:BC-CTS-CCO Client Copy