Parallel query error ORA-12801
Oracle Database Tips by Burleson Consulting
When running Oracle parallel query, I get a sporadic
error like this:
ERROR: ORACLE execute
error: ORA-12801: error signaled in parallel query server P017
ORA-01652: unable to extend temp segment by
314 in tablespace TEMP.
I understand the ORA-01652 as being caused by
running out of space, but I do not understand the ORA-12801.
Wow, P017, that's a lot of parallel query
processes. Just make sure that you have enough processors to support this
load. I've seen this ORA-12801 error pop-up intermittently for no
apparent reason, usually when the server is especially active, and it's always
the second message (in your case, ORA-01652).
note 184416.1 has details on diagnosing the ORA-12801 error. It notes
that the ORA-12801 is somewhat generic and that you should look for more details
in your alert.log or in trace files in the USER_DUMP_DEST or
location. You can set event
10397 to get more details:
ORA-12801, 00000, "error signaled in parallel
query server %s"
Cause: A parallel query server reached an exception condition.
Action: Check the following error message for the cause, and consult your
error manual for the appropriate action.
*Comment: This error can be turned off with event 10397, in which case the
server's actual error is signaled instead.
In any case, the central question is why your
parallel query was performing a sort, resulting in the
OPQ generally sorts as the final step, after
the paralel processes have returned the result set to the parallel query
coordinator (usually P00).
solution, of course, is to increase the size of your TEMP tablespace, or better
still, increase your sort_area_size. If this job is running batch, you can
do this with an alter session command, as this this case, to one gig:
alter session set sort_area_size =
If you like Oracle tuning, see the book "Oracle
Tuning: The Definitive Reference", with 950 pages of tuning tips and
You can buy it direct from the publisher for 30%-off and get
instant access to the code depot of Oracle tuning scripts.