The document discusses various topics related to troubleshooting and optimizing SAP systems including developer trace files, debugging, file system cleanup, transports, work processes, SQL tuning, and more. It provides questions on each topic and describes techniques for identifying issues such as long-running jobs, expensive SQL statements, and resolving common errors. Transaction codes, reports, and tools are referenced for monitoring systems, analyzing performance bottlenecks, and improving overall system health.
The document discusses various topics related to troubleshooting and optimizing SAP systems including developer trace files, debugging, file system cleanup, transports, work processes, SQL tuning, and more. It provides questions on each topic and describes techniques for identifying issues such as long-running jobs, expensive SQL statements, and resolving common errors. Transaction codes, reports, and tools are referenced for monitoring systems, analyzing performance bottlenecks, and improving overall system health.
The document discusses various topics related to troubleshooting and optimizing SAP systems including developer trace files, debugging, file system cleanup, transports, work processes, SQL tuning, and more. It provides questions on each topic and describes techniques for identifying issues such as long-running jobs, expensive SQL statements, and resolving common errors. Transaction codes, reports, and tools are referenced for monitoring systems, analyzing performance bottlenecks, and improving overall system health.
The document discusses various topics related to troubleshooting and optimizing SAP systems including developer trace files, debugging, file system cleanup, transports, work processes, SQL tuning, and more. It provides questions on each topic and describes techniques for identifying issues such as long-running jobs, expensive SQL statements, and resolving common errors. Transaction codes, reports, and tools are referenced for monitoring systems, analyzing performance bottlenecks, and improving overall system health.
Download as DOCX, PDF, TXT or read online from Scribd
Download as docx, pdf, or txt
You are on page 1of 15
What are the different developer trace files in SAP?
In case of issues, what are the trace files do you check ?
What is the location of the developer trace files in SAP? What is the typical path for work directory in SAP? What is the naming convention of various developer trace files? What are the different trace files do you check to troubleshoot an issue in SAP? If file systems in SAP server is full, what need to be done? How to avoid file system full in SAP? How to delete un necessary files in file systems of SAP? How to delete core files in SAP? How to delete trace files in SAP? How to delete stat files manually in SAP? What is the transaction code used to delete stat files manually in SAP? What are various reports to be run to cleanup when file system is full? How to prune the file systems in SAP? How to delete old archive files in SAP? What is the location of work and data directories in SAP? What is the location of global directory in SAP? Can we delete old page file and role files when the SAP system is online? What is the sap parameter to set the trace level in SAP?
What is debugger? What is debugging? What is the reason for DEBUGGING IMPOSSIBLE dump in ST22? How to avoid DEBUGGING IMPOSSIBLE dump in ST22 of sap? What is the parameter used to increase or decrease debugged sessions in SAP? Usually, in which role of sap systems, debugging can be done? How many dialog work processes can be in debugging mode in SAP as per recommendation in development systems? What is the reason for system performance issues, if large numbers of developers are doing debugging in an SAP system simultaneously? Is it suggested to perform debugging in production systems? If not, why?
How to generate SAP solution manager key for the installation or upgrade process? What is the process to generate solution manager key for a new installation? How to generate solution manager key from SMSY transaction? What is the tcode used to generate solution manager key in SAP?
What is SAP Gateway ? How to monitor SAP Gateway ? What is the transaction code to monitor SAP Gateway ? How to monitor SAP Gateway from the OS level ? What are the different processes of a SAP Gateway? What is spool overflow ? How to troubleshoot spool overflow ? How to delete old spool requests ? How to avoid spool overflow issue ? How to check spool numbers? How to set the spool number in SAP ? How to define storage location (Temse) of spool requests ? How to find out who are all having access to a particular tcode in SAP system? How to find out which user ids are having access to a transaction in SAP system? How to use SUIM tcode to identify users having access to a particular transaction in SAP system?
How to resolve the transport error Transport Control Program tp ended with error code 0247? How to resolve the transport error Errors: addtobuffer has problems with data- and/or cofile? How to resolve transport issue encountered while adding a transport to import queue of target system? 1) How do you troubleshoot a long running transport (or) How actions do you take when a transport is running for a lot of time (or) How to terminate a long running transport (or) A transport is in truck status for unusually long period of time. What could be the reason ? How do you troubleshoot (or) Transport is not getting terminated and all your other transports are pending to be imported. How to terminate this long running transport ? 2) What is an RFC ? What is the significance of RFC (or) How to create an RFC in SAP system ? (or) How to different tests you do to check an RFC is functioning well in SAP ? (or) How to delete an RFC ? 3) How to configure printer in SAP ? (or) What is the Tcode to configure printer in SAP ? (or) How to check the spool requests in SAP ?
2) What does spool request contain ? (0r) Where is the spool request stored ? (or) What are different Spool statuses and their significance? (0r) Which workprocesses will create spool requests? (0r) What is the difference between spool request and output request ? (0r) Which workprocess will create output request or print request? 3) What is the database administration tool supported by SAPfor oracle database? (0r) What is BRTOOLS ? (0r) How to access BRTOOLS ? (0r) How to add or extend datafiles in sap system based on oracle database?
4) How to check the update status ? (Or) What is the reason for update deactivation ? (0r) How to activate or deactivate the update ? (Or) What is the parameter to be set to switch off automatic update deactivation ? (0r) How to troubleshoot, if update got deactivated ? (0r) What happens for the updates that are in progress, if update got deactivated ? 5) What is a workprocess ? (0r) What are the different types of workprocesses and their functionality ? (Or) How to increase/decrease the number of workprocesses?
6) What is a SAP lock ? (0r) Different types of SAP locks ? (Or) Difference between Write lock(E) and Enhanced write lock(X) ? (Or) How to monitor SAP locks ? (Or) How to delete SAP locks ? 1. A user complaints to you that a background usually takes 3hrs to run but it is already 6hrs completed and still the job is running. How to analyse the issue ? What are expensive SQL statements ? What are the consequences of expensive SQL statements ? What factors to be considered to tune expensive SQL statements? What are the transactions or tools available in SAP to identify expensive SQL statements?
How to analyze expensive SQL statement using SM50/SM66 ? Go to transaction SM66 and have a look at the global workprocess overview. i) Have a look at Action column and identify any long running Sequential read/ direct read /insertion /updation etc. ii) If so, please note the respective report that is being run and the table that is being used for the same. From the report we can make whether it is SAP standard report or customized report. If it is customized, we can take help of ABAPer to see if the report can be finetuned in cases of bad programming. Table details can be used to figure out the size of the table and whether statistics are upto date for the table or not. Please note : "Updatestats job should run daily so that system will have recent statistics about all the tables. These statistics will be useful for Cost based optimizer to identify optimized execution plan for an SQL statement" iii) Also, please note the user who is running that process. So that, later user can be approached and a trace(ST05) can be kept for his activity to understand his transaction in detail which would help for finetuning. iv) SM50 transaction can be used to view the detailed display of the process and the SQL statement that is being executed
For example, Please refer below screenshot of SM66 : In the below screenshot, i) Highlighted user is running ZFI_TDS* report on RBKP table in dialog mode and sequential read action is happening on the same. ii) user DDIC is running RBDMONI_* report (in background mode) on table BDCP2 and direct read is happening on the same. It has already consumed 783 seconds of CPU time.
To analyze point i) scenario in the above case, please note the server name on which this process is running. Go to that server through SM51 and have a look at SM50 transaction.
Identify the respective PID of the process which you have suspected as expensive SQL from the overview and double click on that process which opens up detailed display as below:
How to identify expensive SQLs using ST04 transaction ?
As shown below, go to transaction ST04 and navigate to SQL statement analysis -> Shared cursor cache
Double-click on the shared cursor cache while leads you to the following screen.
In the above screen, please provide Buffer gets as 50,000 for example and in the List sort options select Buffer gets radio button and execute.
It displays all the SQL statements whose buffer gets are more than 50,000 and sorts them in descending of buffer gets as shown below
As highlighted in the above screen, identify the top 5 or 10 statements as per buffer gets. These are expensive or costly SQL statements.
Also look at executions column and figure out the value. If value is greater for executions it means that the SQL is frequently getting executed and it is worth tuning that statement.
Afterwards click on the corresponding SQL statement which opens the SQL statement as below
In the above screen, click on explain icon (highlighted) which opens up another window as below
In the above window, you can view :
Estimated costs to execute the SQL Estimated rows to be fetched Estimated CPU costs Estimated IO costs Ideally, all of these parameter values should be low for an optimized SQL statement. For expensive SQL statements, these values will be of very high impacting system performance. Also, in the above window find out whether FULL SCAN is present. If present it means indexing is not proper for the table involved in this SQL statement.
Please double click on the table name or index name which is going for full scan, to view similar window as below :
In the screen, you can note Last statistics date. If this date is too old, it is recommended to run update statistics for this table or index. This improves performance of the SQL statement as it provides correct recent statistics so that execution plans for SQL statement will be done properly.
Due to outdated statistics, execution plan wont be proper leading to high row fetches, increasing CPU and IO costs.
1) What is the transaction code to be used to view your own spool requests in SAP ?
2) Apart from update work processes what are the other work processes that can do the update task ? 4) How to you apply license for an ABAP stack of an SAP system ?
Guidelines for activating a Performance trace
1. If you are tracing a particular activity of a user, please make sure that the particular user is not performing any other activity in the system. Otherwise trace file will be difficult to analyze. For reasons of simplicity, please request user to perform only one activity while the trace is activated.
2. Please make sure that no background jobs or update processes are running in that SAP for that particular user whose activity is being traced. Otherwise trace wont be clear
3. By default, SQL trace is selected in ST05 transaction. Incase you would like to trace others( like RFC trace, buffer trace) please activate them also.
4. Normally we are interested in the buffer load processes that get recorded while tracing an activity through SQL trace. Therefore, it is suggested to execute the program or activity that is to be traced once before actually tracing it so that all the buffer loads processes will happen. In the next run, since buffers were already loaded SQL trace doesnt capture un-necessary details related to buffer load which makes it easy to analyze the trace.
5. In cases of distributed SAP system, where there are number of application servers then you need to activate the trace in the particular application server where the user is performing the activity. In other words, trace wont get recorded if you activate trace in one application server and user is performing the activity in another application server.
6. If you would like to record a trace for background job or for an update request in a distributed SAP system, it is suggested to activate the trace in all the application servers that are present in the SAP system. This is required because you will never know to which application server the particular request goes for execution.
If you are tracing an activity of any other user you can look at following monitors during the trace :
Workprocesses overview (SM50/SM66) Operating system monitor of Database server to identity any CPU bottlenecks in database server) Database process monitor for monitoring the execution of SQL statements
Profile parameter settings for Performance Trace (ST05):
Please note that trace cannot be taken for very long duration as the size of the trace file is limited as set by SAP profile parameter. When the trace file is full, the oldest entries are deleted or overwritten by the newest entries i.e. writing to the trace file is cyclical.
The SAP profile parameter rstr/max_diskspace is used to set the size of the trace file in a SAP system. The default trace file size is 16MB
For a trace file, default file name also can be set using the SAP profile parameter rstr/file. What is the memory allocation sequence to dialog work processes in SAP? When does a work process go to PRIV mode? How to avoid or minimize work process going to PRIV mode ? What are the SAP parameters used to define initial roll area, extended memory, heap memory, roll area ? What is the memory allocation sequence to non dialog work processes (background, update, enqueue and spool workprocesses in SAP? What are the SAP parameters used to define initial roll area, extended memory, heap memory, roll area ? What is the memory allocation sequence to non dialog work processes in Windows NT? How to view database active parameters at SAP level ? How to view SPFILE parameters at SAP level ? How to view database Parameters history at SAP level ? How to export the database parameters to an excel sheet ? What are the different background processes of oracle database ? What are the functionalities of different background processes of oracle? What is dirty buffer ? What is cold buffer? What is write-ahead-logging ? How to list or view the different background processes of oracle ? What is PFILE in Oracle?
What is SPFILE in Oracle?
What is the use of PFILE or SPFILE in Oracle ?
What is the difference between PFILE and SPFILE in Oracle ?
What are the advantages of SPFILE compared to PFILE in Oracle ?
How to check whether database is running with PFILE or SPFILE ?
What is the control file in oracle? What are the functions of control file in oracle ? What are the control file contents ? Can database function properly without control file? Can we edit control file ? Who can modify control file ? At what time control file will be created?
What are the scenarios in which contol file should be backed up in oracle? How to backup control file in oracle? How to recover an instance when one of the control files got corrupted ? How multiple control files are managed in Oracle ?
How to check table size in SAP? How to check view size in SAP? How to find out number of rows in a table in SAP? How to view indexes on a table in SAP? How to view index statistics of a table in SAP? How to find out on what columns indexes are built on a SAP table? How to find out on which date index statistics are last run for a SAP table?
How to check the database size ?
How to check in SAP, the number of tables and indexes in database and their sizes ?
How to check the users that are present in database at SAP level ?
How to check various tablespaces in SAP and their sizes ?
Architecting Solutions with SAP Business Technology Platform: An architectural guide to integrating, extending, and innovating enterprise solutions using SAP BTP