Posts

Showing posts from February, 2011

How HTTP Requests are Processed in the Dispatcher Node

Image
You may be aware by now that when you are calling 5<Instance Number>00 port, you are sending the request on dispatcher node's http port. The call is routed from that point to the server node where the application logic processes the request. This post briefly discusses what happens inside. Let's assume that there is a flood of requests made to the port. The requests are queued up in the socket queue. These requests are listened to at the ServerSocketListener for http port. The socket queue and the listeners are handled by the Ports Manager. The HTTP Provider service provides the port and other information such as keepalive timeout and the number of listeners (AcceptingThreadsCount) The request picked up by the listener will be in the waitingTasks queue (big pile of files in the diagram) until it is picked up by a System Thread for processing. The Connection Manipulator wraps the request with a TCPRunnableConnection and sends it to the HTTP protocol processor.

Controlling Log Files

The number of defaultTrace files and whether or not they should be archived is controllable. To change the number of defaultTrace files, go to Server --> Kernel --> Log Manager and change DefaultTraceFile_Count . To archive the trace files, go to Server --> Services --> Log Configurator --> Properties Tab and set ArchiveOldLogFiles to ON. These logs are archived at /usr/sap/<SID>/j2ee/cluster/server<X>/log/archive. Ensure that there is enough free space maintained as these files are not deleted automatically. Also delete the xml file defined in Logviewer_LogDirectoryWriteToFile property in Log Viewer Service regularly.

Archive Job Failing on Adapter Engine with 503 Error

Image
If archive job fails with the error " com.sap.aii.af.ra.ms.impl.core.archiving.executor.ArchiveExecutor, Reason: java.io.IOException: Unable to create collection, returncode is 503 null " it means that XML_DAS application is not running. You can track this error While monitoring the Adapter Engine under Component Monitoring section of RWB. Click the details link on "Component messaging-system running?". You may also have noticed for the error " com.sap.engine.services.deploy.container.ExceptionInfo: Exception during the initialization of container boot classcom.sap.archtech.daservice.ejb.PackMDBean0_0ContainerFP " in defaultTrace file. To fix the problem start sap.com/tc~TechSrv~XML_DAS application. You can do this using telnet. telnet <application host> 5<instance number>08 Login using j2ee_admin lsc jump <server node > START_APP sap.com/tc~TechSrv~XML_DAS list_app | grep XML_DAS quit If you see a null pointer exc

Enqueue Server Max Requests and Enqueue Table Size

If you start noticing I/O or memory errors in the dev_enqio_* trace file, the enqueue server is being overloaded. enque/server/max_requests and enque/server/max_query_requests determine the number of requests that can be processed parallely. These numbers should atleast be equal to the number of work processes or the number of Java threads (in all instance). enque/table_size determines the size of the enqueue table. If there is a memory error in the trace files, increase enque/table_size. Sample calculations of the max_*request parameters based on number of WPs/threads and enqueue table size: For ASCS Total number of WPs = 1000 Lock Table Size = 500MB enque/server/max_query_requests = 1000 enque/server/max_requests = 1000 + 500 * 25 = 13500. #The additional 25*500 is for handling replication in HA systems. enque/table_size = 500000 For SCS Total number of Java Threads per node = 350 Total number of nodes = 3 Lock Table Size = 32MB enque/server/max_query_reques

JMSProvider Transaction Logs

The JMSProvider service writes its transaction logs (*.tx) to the directory maintained in Server --> Services --> JMS Provider --> Properties --> Property 'transactionStorePath'. By default it is set to the home directory of the J2EE installation. Make sure that this directory has enough free space and has rw permissions on <sid>adm.

TEDx - Daniel Simons: Countering Intuition

Image
Watch Daniel Simons speak on how our intuition fools us.

Listen to Microphone on Windows 7 and Ubuntu

Image
Listening to Microphone on windows 7: Right-click on the Volume control icon and select "Recording deivices" Right-click on Microphone/Line In and choose Properties Go to Listen tab and check Listen to this device" Press Apply or OK to activate the changes. Listening to Microphone on Ubuntu: Install Jack:  sudo apt-get install jackd Open Jack control from Audio and Video Click on "Start" and then on "Connect" Select each capture_n, connect to the system in right panel and press connect You can use this feature to connect other audio devices to your computer.

TED Talks - Sir Ken Robinson: Do Schools Kill Creativity?

Image
Sir Ken Robinson speaks on how we are "educated" out of creativity.

Tips and Tricks to Improve Your Windows 7 Experience

Image
We have compiled some nifty tricks that are tested on Windows 7. Some of them work on XP. Windows Key Shortcuts 1. Windows 7 has a new feature known as  Snap  which can resize and drag the active window to the edges of the screen. You can Snap the open windows by using  Windows Key + Arrow Keys.  2. You can lock your computer with fewer keys than the traditional method of using  Crtl+Alt+Del.  Try  Windows Key + l   3. Windows Key + x will open Windows Mobility Center . You can monitor and adjust your laptop settings with WMC. 4. Windows Key + b  will focus on the System Tray. 5. Windows Key + Pause/Break Key  brings up System Properties. 6. Windows Key + r opens up Run dialog.box. You can type in the name of the exe files to start the application from this box. 7.  Windows Key + Tab Key  iterates through task bar items. 8.  Windows Key + e opens Explorer 9. Use   Windows Key + Number   to launch, maximize and minimize the applications in the task bar.   Nu

Windows OS Diagnostic Utilities

Image
Some excellent utilities to troubleshoot and learn more. Autoruns : Information on executables that are launched automatically during bootup or login. Process Explorer : Information about files/directories and DLLs processes have opened or loaded. FalconFour : BootCD built around Hiren’s BootCD with added utilities and support more hardware.

Checking the Lock Handler on SCS Instance Using jenqulib.jar

The J2EE server nodes uses the lock handler class jenqulib.jar (you should be able to find this jar file in oslibs folder). This library can be used to test the enqueue locking in a standalone JVM using the following command: java -cp jenqulib.jar com.sap.bc.krn.enqu.EnquLocktableTest -server <SCS host> 32<SCS_Instance_Number> -enq Check the help option for more information: java -cp jenqulib.jar com.sap.bc.krn.enqu.EnquLocktableTest -help