Skip to Main Content

Breadcrumb

Question and Answer

Connor McDonald

Thanks for the question, Surendar.

Asked: September 13, 2017 - 1:00 pm UTC

Last updated: September 19, 2017 - 2:02 am UTC

Version: 11.2.0

Viewed 1000+ times

You Asked

Hi Tom,

I have bit knowledge (aware of defination) on PGA and SGA.
But I would like to know, when the sql is triggered from client tool(toad).

-> background process uses Shared pool memory OR pga memory for performing SYNTAX and SYMANTIC checks of that sql >
-> Does PGA memory logical structure is also like collection of block?
-> and once the sql is triggered for 10 threads, then how to find out the parent thread of that sql.
-> does killing parent thread will kill the whole session OR is there any other session SID look for and kill it

and Connor said...

background process uses Shared pool memory OR pga memory for performing SYNTAX and SYMANTIC checks of that sql

Both. You need private memory for your own session processing, and shared memory to access things like dictionary definitions etc.

Does PGA memory logical structure is also like collection of block?

It has structure but it is unrelated to blocks. It is more like memory management of a standard c program, ie, alloc pages as required

and once the sql is triggered for 10 threads, then how to find out the parent thread of that sql.

thread ? Are you talking windows ? If you need to kill a background session in windows, you can use ORAKILL

C:\>orakill

Usage:  orakill sid thread

  where sid    = the Oracle instance to target
        thread = the thread id of the thread to kill

  The thread id should be retrieved from the spid column of a query such as:

        select spid, osuser, s.program from
        v$process p, v$session s where p.addr=s.paddr


does killing parent thread will kill the whole session OR is there any other session SID look for and kill it

See above.

Rating

  (2 ratings)

Is this answer out of date? If it is, please let us know via a Comment

Comments

A reader, September 17, 2017 - 10:50 am UTC


A reader, September 17, 2017 - 10:51 am UTC

Thanks a lot Tom, I was saying thread where we execute sql parallel,
Connor McDonald
September 19, 2017 - 2:02 am UTC

A parallel slave is just another database connection, and the session that spawned them becomes a "coordinator".

If you kill the coordinator, then parallel slaves will *eventually* try to communicate with it, and realise it has gone and they will stop their execution.


More to Explore

Administration

Need more information on Administration? Check out the Administrators guide for the Oracle Database