RE: [External] Wierd Parallel DDL Behaviour ?

From: Gokul Gopal <gokulkumar.gopal_at_gmail.com>
Date: Fri, 16 Dec 2016 08:18:51 +0530
Message-ID: <58535620.8bc2620a.7ee11.22b6_at_mx.google.com>



Thanks Hemant.

Interestingly, if I remove /*+ parallel(4) */ and replace it with "parallel 4" at the statement level, it stops working. Any idea why this might be happening?

Gokul Gopal

-----Original Message-----
From: "Chitale, Hemant K" <Hemant-K.Chitale_at_sc.com> Sent: ‎16/‎12/‎2016 07:09
To: "gokulkumar.gopal_at_gmail.com" <gokulkumar.gopal_at_gmail.com>; "Oracle-L Group" <oracle-l_at_freelists.org> Subject: RE: [External] Wierd Parallel DDL Behaviour ?

>> create /*+ parallel(4) */ table t15
 

Since at least 7.3.4  

See the CREATE TABLE statement and the PARALLEL Clause in the 7.3.4 documentation available online http://docs.oracle.com/pdf/A32538_1.pdf (back then, Parallel Query was a licensed Option in the database)  

Hemant K Chitale      

From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Gokul Kumar Gopal Sent: Friday, December 16, 2016 4:07 AM
To: Oracle-L Group
Subject: [External] Wierd Parallel DDL Behaviour ?  

Hello,  

I am trying to understand the following run..  

sqlplus <user>/<pwd>_at_db  

SQL*Plus: Release 11.2.0.1.0 Production on Fri Dec 16 01:25:38 2016  

Copyright (c) 1982, 2010, Oracle. All rights reserved.    

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options  

SQL> select * from v$mystat where rownum <= 1;  

       SID STATISTIC# VALUE
---------- ---------- ----------

       278 0 0  

SQL>
SQL>
SQL> alter session force parallel DDL;
 

Session altered.  

SQL> alter session force parallel DML;  

Session altered.  

SQL> alter session force parallel query;  

Session altered.  

SQL>
SQL> create table t15 as select * from dba_objects union all select * from dba_objects; ^C  

At this point, I had to stop the process as it created 289 sessions and was still running..  

I made some changes and re-ran..  

sqlplus <user>/<pwd>_at_db  

SQL*Plus: Release 11.2.0.1.0 Production on Fri Dec 16 01:29:34 2016  

Copyright (c) 1982, 2010, Oracle. All rights reserved.    

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options  

SQL> alter session force parallel DDL;  

Session altered.  

SQL> alter session force parallel DML;  

Session altered.  

SQL> alter session force parallel query;  

Session altered.  

SQL>
SQL> set timing on
SQL>
SQL> select * from v$mystat where rownum <= 1;
 
       SID STATISTIC#      VALUE
---------- ---------- ----------
       278          0          0
 

Elapsed: 00:00:00.50
SQL>
SQL> create /*+ parallel(4) */ table t15 as select * from dba_objects union all select * from dba_objects;  

Table created.  

Elapsed: 00:00:08.02  

The highlighted part is the only changed I made, but I cannot explain why this worked with no additional sessions.. I have never seen this syntax mentioned anywhere but a casual try worked.  

Does anyone know how this works ?  

Rgds,
Gokul

This email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please delete all copies and notify the sender immediately. You may wish to refer to the incorporation details of Standard Chartered PLC, Standard Chartered Bank and their subsidiaries at https://www.sc.com/en/incorporation-details.html

--
http://www.freelists.org/webpage/oracle-l
Received on Fri Dec 16 2016 - 03:48:51 CET

Original text of this message