4 Replies Latest reply: Dec 10, 2012 2:07 PM by Catch_22 RSS

    Oracle blocked process on vmstat

    979031
      Hello,

      I am getting oracle blocked process on the results of vmstat b column. The run queue is fine and but the blocked process are increasing . When I checked with the forums i found out that it waiting for an I/O.

      Hardware: IBBM blade
      SAN - Netapp

      The server is OEL 5 with Oracle 11g running on it. There is no local disk on the server everything configured as SAN with multipathing. Also along with the /boot and / partition are connected to the SAN.

      Also experiencing the issues with the cpu utilization as well and the cpu utilization become 100%. And it causes for the server load to reach 15 , 25, 30. The kernel parameters are set it up as recommend by the Oracle.

      This is causing issues for Oracle query. Is there any recommendation I can use to improve the performance?
        • 1. Re: Oracle blocked process on vmstat
          Catch_22
          There is no general system setting to increase I/O performance. You will need to find out what is causing the issue. Your problem description is too vague and does not give any clues.
          • 2. Re: Oracle blocked process on vmstat
            979031
            Hello,

            The iostat shows fine .. Is there any Kernal paramaters which can help in this issue?
            • 3. Re: Oracle blocked process on vmstat
              979031
              Hello,

              Here I am attaching my vmstat results.

              [http://snag.gy/EvNkw.jpg]

              When you check the above results you can see that bi parameter is high when it compare with the bo will that be causing the issues?
              • 4. Re: Oracle blocked process on vmstat
                Catch_22
                The numbers in vmstat alone won't help you, as they depend on workload. As far as I know, the values won't tell you if your system or processes are working efficiently. You may have a busy process or technical issue causing a performance bottleneck, or perhaps you are overloading the machine, have run out of physical memory, etc., etc.

                The bi and bo column in vmstat shows the data transfer between virtual memory and block devices. I don't see how these numbers could possibly tell you that something is wrong. Perhaps your database is performing a lot of full table scans or the DB cache is too small, etc. But then again, it depends on your tasks and workload.

                I suggest to find out which processes are causing the most I/O and then analyze the processes. Process that are waiting for I/O are typically in "D" state. What is your output of the following:

                <pre>
                # ps -eo state,pid,cmd | grep "^D"
                </pre>

                If you suspect that disk access is the issue, use the pid(s) of the previous command as following to see which files are affected.

                <pre>
                # lsof -p pid
                </pre>