Deadlock with CREATE GLOBAL TEMPORARY TABLE

I got this error
ORA-00604: error occurred at recursive SQL level 1
ORA-00060: deadlock detected while waiting for resource
while trying to create global temporary table.
Table creation command:
CREATE GLOBAL TEMPORARY TABLE ITUSER.T_0091FBDG ("GOD" char(4) DEFAULT (' ') NOT NULL,"UNKUM" number(10,0) DEFAULT (0) NOT NULL,[a lot of other fields]) ON COMMIT PRESERVE ROWS
There is no outer references in command. So does somebody know where does deadlock come from?
I'm using Oracle 10g.
Edited by: LeopoldStoch on Apr 13, 2010 7:04 AM

I have grabbed log files. But it make me even more curious. Here it is:
alert_itdb.log
Thread 1 advanced to log sequence 253 (LGWR switch)
Current log# 1 seq# 253 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO01.LOG
Tue Apr 13 10:53:09 2010
Thread 1 advanced to log sequence 254 (LGWR switch)
Current log# 2 seq# 254 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO02.LOG
Tue Apr 13 10:55:32 2010
Thread 1 advanced to log sequence 255 (LGWR switch)
Current log# 3 seq# 255 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO03.LOG
Tue Apr 13 10:55:49 2010
ORA-00060: Deadlock detected. More info in file c:\oracle\product\10.2.0\admin\itdb\udump\itdb_ora_3868.trc.
Tue Apr 13 11:01:58 2010
Thread 1 advanced to log sequence 256 (LGWR switch)
Current log# 1 seq# 256 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO01.LOG
Tue Apr 13 11:03:29 2010
Thread 1 advanced to log sequence 257 (LGWR switch)
Current log# 2 seq# 257 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO02.LOG
Tue Apr 13 11:14:16 2010
itdb_ora_3868.trc
Dump file c:\oracle\product\10.2.0\admin\itdb\udump\itdb_ora_3868.trc
Tue Apr 13 10:55:48 2010
ORACLE V10.2.0.4.0 - Production vsnsta=0
vsnsql=14 vsnxtr=3
Oracle Database 10g Release 10.2.0.4.0 - Production
Windows NT Version V5.2 Service Pack 2
CPU : 2 - type 586, 1 Physical Cores
Process Affinity : 0x00000000
Memory (Avail/Total): Ph:3568M/8188M, Ph+PgF:7889M/12090M, VA:579M/2799M
Instance name: itdb
Redo thread mounted by this instance: 1
Oracle process number: 18
Windows thread id: 3868, image: ORACLE.EXE (SHAD)
*** 2010-04-13 10:55:48.874
*** ACTION NAME:() 2010-04-13 10:55:48.811
*** MODULE NAME:(5436,20100413105316,82100) 2010-04-13 10:55:48.811
*** SERVICE NAME:(ITDB) 2010-04-13 10:55:48.811
*** SESSION ID:(145.52602) 2010-04-13 10:55:48.811
DEADLOCK DETECTED ( ORA-00060 )
[Transaction Deadlock]
The following deadlock is not an ORACLE error. It is a
deadlock due to user error in the design of an application
or from issuing incorrect ad-hoc SQL. The following
information may aid in determining the deadlock:
Deadlock graph:
---------Blocker(s)-------- ---------Waiter(s)---------
Resource Name process session holds waits process session holds waits
TX-00080011-0000198d 18 145 X 17 158 S
TX-0006001c-0000192d 17 158 X 18 145 S
session 145: DID 0001-0012-00000164 session 158: DID 0001-0011-000005F5
session 158: DID 0001-0011-000005F5 session 145: DID 0001-0012-00000164
Rows waited on:
Session 158: obj - rowid = 00000000 - D/////AACAAAKy6AAA
(dictionary objn - 0, file - 2, block - 44218, slot - 0)
Session 145: obj - rowid = 00000000 - D/////AACAAAABJAAA
(dictionary objn - 0, file - 2, block - 73, slot - 0)
Information on the OTHER waiting sessions:
Session 158:
pid=17 serial=2727 audsid=241067 user: 60/ITUSER
O/S info: user: VSC03\it_appsrv, term: VSC03, ospid: 2328:2640, machine: WORKGROUP\VSC03
program: AppServer.exe
client info: ELIZ-041.R#046IKSANOV.RIKSANOV.VSC03:8223.2328.5-1-2600.IT_APPSR
application name: 5436,20100413105322,82000, hash value=3107059750
Current SQL Statement:
CREATE GLOBAL TEMPORARY TABLE ITUSER.T_009EFBDN ("GOD" char(4) DEFAULT (' ') NOT NULL,"UNKUM" number(10,0) DEFAULT (0) NOT NULL,"CENA" number(15,5) DEFAULT (0) NOT NULL,"EDI" number(3,0) NULL,"EDI2" number(3,0) NULL,"KOL" number(14,5) DEFAULT (0) NOT NULL,"KOL2" number(14,5) DEFAULT (0) NOT NULL,"SUMMA" number(16,2) DEFAULT (0) NOT NULL,"KOL_N1" number(14,5) DEFAULT (0) NOT NULL,"KOL_N2" number(14,5) DEFAULT (0) NOT NULL,"KOL_N3" number(14,5) DEFAULT (0) NOT NULL,"KOL_N4" number(14,5) DEFAULT (0) NOT NULL,"KOL_N5" number(14,5) DEFAULT (0) NOT NULL,"KOL_N6" number(14,5) DEFAULT (0) NOT NULL,"KOL_N7" number(14,5) DEFAULT (0) NOT NULL,"KOL_N8" number(14,5) DEFAULT (0) NOT NULL,"KOL_N9" number(14,5) DEFAULT (0) NOT NULL,"KOL_N10" number(14,5) DEFAULT (0) NOT NULL,"KOL_N11" number(14,5) DEFAULT (0) NOT NULL,"KOL_N12" number(14,5) DEFAULT (0) NOT NULL,"KOL_N13" number(14,5) DEFAULT (0) NOT NULL,"KOL2N1" number(14,5) DEFAULT (0) NOT NULL,"KOL2N2" number(14,5) DEFAULT (0) NOT NULL,"KOL2N3" number(14,5) DEFAULT (0) NOT NULL,"KOL2N4" number(14,5) DEFAULT (0) NOT NULL,"KOL2N5" number(14,5) DEFAULT (0) NOT NULL,"KOL2N6" number(14,5) DEFAULT (0) NOT NULL,"KOL2N7" number(14,5) DEFAULT (0) NOT NULL,"KOL2N8" number(14,5) DEFAULT (0) NOT NULL,"KOL2N9" number(14,5) DEFAULT (0) NOT NULL,"KOL2N10" number(14,5) DEFAULT (0) NOT NULL,"KOL2N11" number(14,5) DEFAULT (0) NOT NULL,"KOL2N12" number(14,5) DEFAULT (0) NOT NULL,"KOL2N13" number(14,5) DEFAULT (0) NOT NULL,"SUM_N1" number(16,2) DEFAULT (0) NOT NULL,"SUM_N2" number(16,2) DEFAULT (0) NOT NULL,"SUM_N3" number(16,2) DEFAULT (0) NOT NULL,"SUM_N4" number(16,2) DEFAULT (0) NOT NULL,"SUM_N5" number(16,2) DEFAULT (0) NOT NULL,"SUM_N6" number(16,2) DEFAULT (0) NOT NULL,"SUM_N7" number(16,2) DEFAULT (0) NOT NULL,"SUM_N8" number(16,2) DEFAULT (0) NOT NULL,"SUM_N9" number(16,2) DEFAULT (0) NOT NULL,"SUM_N10" number(16,2) DEFAULT (0) NOT NULL,"SUM_N11" number(16,2) DEFAULT (0) NOT NULL,"SUM_N12" number(16,2) DEFAULT (0) NOT NULL,"SUM_N13" number(16,2) DEFAULT (0) NOT NULL,"DATE_REST" date NULL,"KOL_PRI" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRI" number(14,5) DEFAULT (0) NOT NULL,"SUM_PRI" number(16,2) DEFAULT (0) NOT NULL,"DATE_FPRI" date NULL,"NDOC_FPRI" char(20) DEFAULT (' ') NOT NULL,"KOL_PRIG" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRIG" number(14,5) DEFAULT (0) NOT NULL,"SUM_PRIG" number(16,2) DEFAULT (0) NOT NULL,"KOL_PRIT" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRIT" number(14,5) DEFAULT (0) NOT NULL,"KOL_RAS" number(14,5) DEFAULT (0) NOT NULL,"KOL2RAS" number(14,5) DEFAULT (0) NOT NULL,"SUM_RAS" number(16,2) DEFAULT (0) NOT NULL,"DATE_LRAS" date NULL,"NDOC_LRAS" char(20) DEFAULT (' ') NOT NULL,"KOL_RASG" number(14,5) DEFAULT (0) NOT NULL,"KOL2RASG" number(14,5) DEFAULT (0) NOT NULL,"SUM_RASG" number(16,2) DEFAULT (0) NOT NULL,"KOL_RAST" number(14,5) DEFAULT (0) NOT NULL,"KOL2RAST" number(14,5) DEFAULT (0) NOT NULL,"KOL_PRIREZ" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRIREZ" number(14,5) DEFAULT (0) NOT NULL,"SUM_PRIREZ" number(16,2) DEFAULT (0) NOT NULL,"KOL_RASREZ" number(14,5) DEFAULT (0) NOT NULL,"KOL2RASREZ" number(14,5) DEFAULT (0) NOT NULL,"SUM_RASREZ" number(16,2) DEFAULT (0) NOT NULL,"PRC_RAS" number(3,0) DEFAULT (0) NOT NULL,"KSSM" char(5) NULL,"COMM" char(40) DEFAULT (' ') NOT NULL,"KDM3" char(1) DEFAULT (' ') NOT NULL,"KDM4" char(1) DEFAULT (' ') NOT NULL,"KOL_INV" number(14,5) DEFAULT (0) NOT NULL,"KOL2INV" number(14,5) DEFAULT (0) NOT NULL,"CENA_INV" number(15,5) DEFAULT (0) NOT NULL,"SUM_INV" number(16,2) DEFAULT (0) NOT NULL,"DATE_INV" date NULL,"KSBG" char(3) DEFAULT (' ') NOT NULL,"KOL_C" number(14,5) DEFAULT (0) NOT NULL,"KOL2C" number(14,5) DEFAULT (0) NOT NULL,"SUM_C" number(16,2) DEFAULT (0) NOT NULL,"KBLS" char(5) DEFAULT (' ') NOT NULL,"BS_ZATR" char(10) NULL,"KAU_ZATR" char(12) DEFAULT (' ') NOT NULL,"MECEXPL" number(3,0) DEFAULT (0) NOT NULL,"SUM_IZNOS" number(14,2) DEFAULT (0) NOT NULL,"SUM_IMEC" number(14,2) DEFAULT (0) NOT NULL,"NINKAS" number(10,0) DEFAULT (0) NOT NULL,"DATE_D" date NULL,"FIO_D" char(10) DEFAULT (' ') NOT NULL,"DATE_K" date NULL,"FIO_O" char(10) DEFAULT (' ') NOT NULL,"STDCURR" char(1) DEFAULT (' ') NOT NULL) ON COMMIT PRESERVE ROWS
End of information on OTHER waiting sessions.
Current SQL statement for this session:
insert into col$(obj#,name,intcol#,segcol#,type#,length,precision#,scale,null$,offset,fixedstorage,segcollength,deflength,default$,col#,property,charsetid,charsetform,spare1,spare2,spare3)values(:1,:2,:3,:4,:5,:6,decode(:5,182/*DTYIYM*/,:7,183/*DTYIDS*/,:7,decode(:7,0,null,:7)),decode(:5,2,decode(:8,-127/*MAXSB1MINAL*/,null,:8),178,:8,179,:8,180,:8,181,:8,182,:8,183,:8,231,:8,null),:9,0,:10,:11,decode(:12,0,null,:12),:13,:14,:15,:16,:17,:18,:19,:20)
===================================================
PROCESS STATE
Process global information:
process: 5F28A1F8, call: 5F3A8E98, xact: 5DFF8B40, curses: 5F37D6A8, usrses: 5F375F38
SO: 5F28A1F8, type: 2, owner: 00000000, flag: INIT/-/-/0x00
(process) Oracle pid=18, calls cur/top: 5F3A8E98/5F3A75B8, flag: (0) -
int error: 0, call error: 0, sess error: 0, txn error 0
(post info) last post received: 0 0 117
last post received-location: kcbzww
last process to post me: 5f289c00 93 0
last post sent: 0 0 117
last post sent-location: kcbzww
last process posted by me: 5f289c00 93 0
(latch info) wait_event=0 bits=0
Process Group: DEFAULT, pseudo proc: 5F2BC4EC
O/S info: user: SYSTEM, term: VSC03, ospid: 3868
OSD pid info: Windows thread id: 3868, image: ORACLE.EXE (SHAD)
Dump of memory from 0x5F276E78 to 0x5F276FFC
5F276E70 0000000B 5E1231B8 [.....1.^]
5F276E80 00000010 000313A9 5F3A75B8 00000003 [.........u:_....]
5F276E90 000313A9 5F4B92D4 0000000B 000313A9 [......K_........]
5F276EA0 5F375F38 00000004 0003129D 5DE1FFA4 [8_7_...........]]
5F276EB0 00000007 000313A9 5DE20028 00000007 [........(..]....]
5F276EC0 000313A9 5DE200BC 00000007 000313A9 [.......]........]
5F276ED0 5DE20140 00000007 000313A9 5DE201C4 [@..]...........]]
5F276EE0 00000007 000313A9 5DE20248 00000007 [........H..]....]
5F276EF0 000313A9 5DE202CC 00000007 000313A9 [.......]........]
5F276F00 00000000 00000000 00000000 00000000 [................]
Repeat 14 times
5F276FF0 00000000 00000000 00000000 [............]
(FOB) flags=2 fib=5DEEEC98 incno=0 pending i/o cnt=0
fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\UNDOTBS01.DBF
fno=2 lblksz=8192 fsiz=311040
(FOB) flags=2 fib=5DEEE608 incno=0 pending i/o cnt=0
fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\CONTROL03.CTL
fno=2 lblksz=16384 fsiz=430
(FOB) flags=2 fib=5DEEE2C8 incno=0 pending i/o cnt=0
fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\CONTROL02.CTL
fno=1 lblksz=16384 fsiz=430
(FOB) flags=2 fib=5DEEDF88 incno=0 pending i/o cnt=0
fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\CONTROL01.CTL
fno=0 lblksz=16384 fsiz=430
(FOB) flags=2 fib=5DEEF658 incno=0 pending i/o cnt=0
fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\ITDATA01.DBF
fno=5 lblksz=8192 fsiz=2109440
(FOB) flags=2 fib=5DEEE948 incno=0 pending i/o cnt=0
fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\SYSTEM01.DBF
fno=1 lblksz=8192 fsiz=79360
(FOB) flags=2 fib=5DEEFCE8 incno=0 pending i/o cnt=0
fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\TEMP01.DBF
fno=201 lblksz=8192 fsiz=43776
SO: 5F375F38, type: 4, owner: 5F28A1F8, flag: INIT/-/-/0x00
(session) sid: 145 trans: 5D06D4B0, creator: 5F28A1F8, flag: (8100041) USR/- BSY/-/-/-/-/-
DID: 0001-0012-00000164, short-term DID: 0000-0000-00000000
txn branch: 00000000
oct: 1, prv: 0, sql: 50B2BAC0, psql: 57554078, user: 60/ITUSER
service name: ITDB
O/S info: user: VSC03\it_appsrv, term: VSC03, ospid: 3668:3616, machine: WORKGROUP\VSC03
program: AppServer.exe
client info: ELIZ-041.R#046IKSANOV.RIKSANOV.VSC03:8223.3668.5-1-2600.IT_APPSR
application name: 5436,20100413105316,82100, hash value=3093400541
last wait for 'enq: TX - allocate ITL entry' blocking sess=0x5F386200 seq=4256 wait_time=2999487 seconds since wait started=2
name|mode=54580004, usn<<16 | slot=6001c, sequence=192d
Dumping Session Wait History
for 'enq: TX - allocate ITL entry' count=1 wait_time=2999487
name|mode=54580004, usn<<16 | slot=6001c, sequence=192d
for 'buffer busy waits' count=1 wait_time=10
file#=1, block#=f923, class#=1
for 'buffer busy waits' count=1 wait_time=53
file#=1, block#=d1ff, class#=1
for 'buffer busy waits' count=1 wait_time=36
file#=1, block#=19, class#=4
for 'buffer busy waits' count=1 wait_time=28
file#=1, block#=19, class#=4
for 'buffer busy waits' count=1 wait_time=27
file#=1, block#=f923, class#=1
for 'buffer busy waits' count=1 wait_time=13
file#=1, block#=ec86, class#=1
for 'buffer busy waits' count=1 wait_time=29
file#=1, block#=f923, class#=1
for 'buffer busy waits' count=1 wait_time=15
file#=1, block#=f95d, class#=1
for 'buffer busy waits' count=1 wait_time=215
file#=1, block#=d1ff, class#=1
temporary object counter: 1
UOL used : 0 locks(used=2, free=10)
KGX Atomic Operation Log 69405330
Mutex 00000000(0, 0) idn 0 oper NONE
Cursor Parent uid 145 efd 5 whr 11 slp 0
oper=NONE pt1=A4744BC4 pt2=6842B2F4 pt3=A4744B94
pt4=00000000 u41=0 stt=0
KGX Atomic Operation Log 69405358
Mutex 50B2BB74(0, 1) idn 0 oper NONE
Cursor Stat uid 145 efd 8 whr 1 slp 0
oper=NONE pt1=50B2BAC0 pt2=00000000 pt3=00000000
pt4=00000000 u41=0 stt=8
KGX Atomic Operation Log 69405380
Mutex 00000000(0, 0) idn 0 oper NONE
Library Cache uid 145 efd 0 whr 0 slp 0
SO: 5C5A6334, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c5a6334 handle=5e9a6868 mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C5A6384[5C76A228,5C59D1D0] htb=5C59D1D0 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=CBK[0020] savepoint=0x0
LIBRARY OBJECT HANDLE: handle=5e9a6868 mtx=5E9A691C(0) cdp=0
namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=S latch#=1 hpc=c742 hlc=c742
lwt=5E9A68C4[5E9A68C4,5E9A68C4] ltm=5E9A68CC[5E9A68CC,5E9A68CC]
pwt=5E9A68A8[5E9A68A8,5E9A68A8] ptm=5E9A68B0[5E9A68B0,5E9A68B0]
ref=5E9A68E4[662DCE3C,662DCE3C] lnd=5E9A68F0[5E9A68F0,5E9A68F0]
LIBRARY OBJECT: object=51e6451c
type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
DEPENDENCIES: count=1 size=16
AUTHORIZATIONS: count=1 size=16 minimum entrysize=18
ACCESSES: count=1 size=16
TRANSLATIONS: count=1 size=16
DATA BLOCKS:
data# heap pointer status pins change whr
0 a1f966d4 51e645b4 I/P/A/-/- 0 NONE 00
6 662dcce4 a24e2534 I/P/A/-/E 0 NONE 00
KGX Atomic Operation Log 50C2014C
Mutex 662DCC54(0, 2) idn d64ee82 oper SHRD
Cursor Pin uid 145 efd 0 whr 3 slp 0
opr=4 pso=5C5A6334 flg=0
pcs=662DCC54 nxt=5B9C77F4 flg=18 cld=0 hd=5E9A6868 par=54763C50
ct=2 hsh=0 unp=00000000 unn=0 hvl=662dcff0 nhv=0 ses=00000000
hep=662DCCA0 flg=80 ld=1 ob=51E6451C ptr=A24E2534 fex=A24E16F8
SO: 5C76A1D8, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c76a1d8 handle=5a67b168 mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C76A228[5C59D1D0,5C5A6384] htb=5C59D1D0 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
LIBRARY OBJECT HANDLE: handle=5a67b168 mtx=5A67B21C(2) cdp=2
name=
insert into col$(obj#,name,intcol#,segcol#,type#,length,precision#,scale,null$,offset,fixedstorage,segcollength,deflength,default$,col#,property,charsetid,charsetform,spare1,spare2,spare3)values(:1,:2,:3,:4,:5,:6,decode(:5,182/*DTYIYM*/,:7,183/*DTYIDS*/,:7,decode(:7,0,null,:7)),decode(:5,2,decode(:8,-127/*MAXSB1MINAL*/,null,:8),178,:8,179,:8,180,:8,181,:8,182,:8,183,:8,231,:8,null),:9,0,:10,:11,decode(:12,0,null,:12),:13,:14,:15,:16,:17,:18,:19,:20)
hash=012a6293ef607cee606b82dc0d64ee82 timestamp=04-08-2010 17:06:19
namespace=CRSR flags=RON/KGHP/TIM/PN0/LRG/KST/DBN/MTX/[100100d1]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=c298 hlc=c298
lwt=5A67B1C4[5A67B1C4,5A67B1C4] ltm=5A67B1CC[5A67B1CC,5A67B1CC]
pwt=5A67B1A8[5A67B1A8,5A67B1A8] ptm=5A67B1B0[5A67B1B0,5A67B1B0]
ref=5A67B1E4[5A67B1E4,5A67B1E4] lnd=5A67B1F0[5A67B1F0,5A67B1F0]
LIBRARY OBJECT: object=54763bb8
type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
CHILDREN: size=16
child# table reference handle
0 662dd020 662dce3c 5e9a6868
1 662dd020 5b9c7940 5eb1fdbc
DATA BLOCKS:
data# heap pointer status pins change whr
0 54c98590 54763c50 I/P/A/-/- 0 NONE 00
SO: 5C5AFBCC, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c5afbcc handle=6ad6312c mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C5AFC1C[5C61B52C,5C59D0B0] htb=5C59D0B0 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x0
LIBRARY OBJECT HANDLE: handle=6ad6312c mtx=6AD631E0(0) cdp=0
namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=2 hpc=b9a0 hlc=b9a0
lwt=6AD63188[6AD63188,6AD63188] ltm=6AD63190[6AD63190,6AD63190]
pwt=6AD6316C[6AD6316C,6AD6316C] ptm=6AD63174[6AD63174,6AD63174
SO: 5C5A5C34, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c5a5c34 handle=69731e20 mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C5A5C84[5C59D4D0,5C6074B0] htb=5C59D4D0 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
LIBRARY OBJECT HANDLE: handle=69731e20 mtx=69731ED4(2) cdp=2
name=update con$ set con#=:3 where owner#=:1 and name=:2
hash=cb0043a665029adc35682cfd8f583ce2 timestamp=04-08-2010 17:10:17
namespace=CRSR flags=RON/KGHP/TIM/PN0/SML/KST/DBN/MTX/[120100d0]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=2 hpc=ac50 hlc=ac50
lwt=69731E7C[69731E7C,69731E7C] ltm=69731E84[69731E84,69731E84]
pwt=69731E60[69731E60,69731E60] ptm=69731E68[69731E68,69731E68]
ref=69731E9C[69731E9C,69731E9C] lnd=69731EA8[69731EA8,69731EA8]
LIBRARY OBJECT: object=66177404
type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
CHILDREN: size=16
child# table reference handle
0 5887c454 5887c270 69641ffc
1 5887c454 5887c400 693d29b4
DATA BLOCKS:
data# heap pointer status pins change whr
0 57178070 6617749c I/P/A/-/- 0 NONE 00
SO: 5C62D288, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c62d288 handle=5734d800 mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C62D2D8[5C59D590,5C59D590] htb=5C59D590 ssga=5C59CD04
user=5f375f38 session=5f375f38 count=0 flags=LRU/[4000] savepoint=0x17ee5af
LIBRARY OBJECT HANDLE: handle=5734d800 mtx=5734D8B4(0) cdp=0
name=SYS._default_auditing_options_
hash=fab1a450ca8625c88d7aa501cb042efa timestamp=03-14-2008 18:46:51
namespace=TABL flags=KGHP/TIM/SML/[02000000]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=3e1e hlc=3e1e
lwt=5734D85C[5734D85C,5734D85C] ltm=5734D864[5734D864,5734D864]
pwt=5734D840[5734D840,5734D840] ptm=5734D848[5734D848,5734D848]
ref=5734D87C[5734D87C,5734D87C] lnd=5734D888[5734D888,5734D888]
LIBRARY OBJECT: object=69e8d9e4
type=TABL flags=EXS/LOC[0005] pflags=[0000] status=VALD load=0
DATA BLOCKS:
data# heap pointer status pins change whr
0 572f55b0 69e8da7c I/-/A/-/- 0 NONE 00
SO: 5C62CA38, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c62ca38 handle=54e2b2d0 mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C62CA88[5C7875E0,5C59D458] htb=5C59D458 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x0
LIBRARY OBJECT HANDLE: handle=54e2b2d0 mtx=54E2B384(0) cdp=0
namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=cb1c hlc=cb1c
lwt=54E2B32C[54E2B32C,54E2B32C] ltm=54E2B334[54E2B334,54E2B334]
pwt=54E2B310[54E2B310,54E2B310] ptm=54E2B318[54E2B318,54E2B318]
ref=54E2B34C[66147E34,66147E34] lnd=54E2B358[54E2B358,54E2B358]
LIBRARY OBJECT: object=51e651ac
type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
DEPENDENCIES: count=1 size=16
AUTHORIZATIONS: count=1 size=16 minimum entrysize=18
ACCESSES: count=1 size=16
TRANSLATIONS: count=1 size=16
DATA BLOCKS:
data# heap pointer status pins change whr
0 6a86de6c 51e65244 I/P/A/-/- 0 NONE 00
6 66147cdc 9dabe588 I/-/A/-/E 0 NONE 00
SO: 5C787590, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c787590 handle=57422b64 mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C7875E0[5C59D458,5C62CA88] htb=5C59D458 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
LIBRARY OBJECT HANDLE: handle=57422b64 mtx=57422C18(2) cdp=2
name=insert into obj$(owner#,name,namespace,obj#,type#,ctime,mtime,stime,status,remoteowner,linkname,subname,dataobj#,flags,oid$,spare1,spare2)values(:1,:2,:3,:4,:5,:6,:7,:8,:9,:10,:11,:12,:13,:14,:15,:16, :17)
hash=8876f3fed7222711572e6a76e623c9d3 timestamp=04-08-2010 17:06:19
namespace=CRSR flags=RON/KGHP/TIM/PN0/MED/KST/DBN/MTX/[500100d0]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=60c0 hlc=60c0
lwt=57422BC0[57422BC0,57422BC0] ltm=57422BC8[57422BC8,57422BC8]
pwt=57422BA4[57422BA4,57422BA4] ptm=57422BAC[57422BAC,57422BAC]
ref=57422BE0[57422BE0,57422BE0] lnd=57422BEC[57422BEC,57422BEC]
LIBRARY OBJECT: object=6a7276e4
type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
CHILDREN: size=16
child# table reference handle
0 66148018 66147e34 54e2b2d0
1 66148018 5896c0ec 6af7d37c
DATA BLOCKS:
data# heap pointer status pins change whr
0 696b76e0 6a72777c I/P/A/-/- 0 NONE 00
SO: 5C78B970, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c78b970 handle=54fbd288 mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C78B9C0[5C787B90,5C59D1B0] htb=5C59D1B0 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x0
LIBRARY OBJECT HANDLE: handle=54fbd288 mtx=54FBD33C(0) cdp=0
namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=3 hpc=f79a hlc=f79a
lwt=54FBD2E4[54FBD2E4,54FBD2E4] ltm=54FBD2EC[54FBD2EC,54FBD2EC]
pwt=54FBD2C8[54FBD2C8,54FBD2C8] ptm=54FBD2D0[54FBD2D0,54FBD2D0]
ref=54FBD304[5BF92EF0,5BF92EF0] lnd=54FBD310[54FBD310,54FBD310]
LIBRARY OBJECT: object=541e8b98
type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
DEPENDENCIES: count=1 size=16
AUTHORIZATIONS: count=1 size=16 minimum entrysize=16
ACCESSES: count=1 size=16
TRANSLATIONS: count=1 size=16
DATA BLOCKS:
data# heap pointer status pins change whr
0 693cb454 541e8c30 I/P/A/-/- 0 NONE 00
6 5bf92e34 a021d62c I/-/A/-/E 0 NONE 00
SO: 5C787B40, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
LIBRARY OBJECT LOCK: lock=5c787b40 handle=5eb09aec mode=N
call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
htl=5C787B90[5C59D1B0,5C78B9C0] htb=5C59D1B0 ssga=5C59CD04
user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
LIBRARY OBJECT HANDLE: handle=5eb09aec mtx=5EB09BA0(2) cdp=2
name=select o.owner#,o.name,o.namespace,o.remoteowner,o.linkname,o.subname,o.dataobj#,o.flags from obj$ o where o.obj#=:1
hash=ae93e4a5100360375a3ff87632f4667e timestamp=04-02-2010 10:17:58
namespace=CRSR flags=RON/KGHP/TIM/PN0/MED/KST/DBN/MTX/[500100d0]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=3 hpc=d23e hlc=d23e
lwt=5EB09B48[5EB09B48,5EB09B48] ltm=5EB09B50[5EB09B50,5EB09B50]
pwt=5EB09B2C[5EB09B2C,5EB09B2C] ptm=5EB09B34[5EB09B34,5EB09B34]
ref=5EB09B68[5EB09B68,5EB09B68] lnd=5EB09B74[5EB09B74,5EB09B74]
LIBRARY OBJECT: object=5bf92fd4
type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
CHILDREN: size=16
child# table reference handle
0 5bf92f60 5bf92d7c 5eb099a8
1 5bf92f60 5bf92ef0 54fbd288
2 5bf92f60 5b9aa120 576a80c8
3 5bf92f60 5b9aa284 54f7a6d0
DATA BLOCKS:
data# heap pointer status pins change whr
0 5eb09a7c 5bf9306c I/P/A/-/- 0 NONE 00

Similar Messages

  • Problem with Create global temporary table command

    Hi,
    Following is the query i am using in one of my pl/sql report..
    EXECUTE IMMEDIATE 'CREATE GLOBAL TEMPORARY TABLE Billing_Report_Table ON COMMIT PRESERVE ROWS as select * from (Vc_Sql_Statement)';
    Error message i am getting when i run the report is "missing SELECT keyword"
    The variable Vc_Sql_statement contains a complex query retrieving data from different tables.
    Please help me out.
    Thanks in advance
    Shanthi

    Hi,
    SCOTT@soti_9> DECLARE
      2    Vc_Sql_Statement VARCHAR2(30) := 'DUAL';
      3  BEGIN
      4    EXECUTE IMMEDIATE
      5      'CREATE GLOBAL TEMPORARY TABLE Billing_Report_Table ON COMMIT PRESERVE ROWS AS ' ||
      6      ' select * from ' || Vc_Sql_Statement;
      7  END;
      8  /
    PL/SQL procedure successfully completed.
    SCOTT@soti_9> select * from Billing_Report_Table;
    D
    XRegards,
    Dima

  • Cannot create Global Temporary Table

    Hi,
    i'm trying to create a Global Temporary Table. However I receive a missing or invalid options specified error.
    This should be one of the most simple ways to create a Global Temporary Table right?
    DECLARE GLOBAL TEMPORARY TABLE SESSION.T_MECHANIC_ALLOCATION
    START_TIME DATE
    ,SYSUR_AUTO_KEY NUMBER
    ,EPP_AUTO_KEY NUMBER
    ,STOP_TIME DATE
    ,WOK_AUTO_KEY NUMBER
    ON COMMIT DELETE ROWS

    No, you create a Global Temporary Table in the same way as any other table: beginning with the CREATE keyword:
    CREATE GLOBAL TEMPORARY TABLE T_MECHANIC_ALLOCATION
    START_TIME DATE
    ,SYSUR_AUTO_KEY NUMBER
    ,EPP_AUTO_KEY NUMBER
    ,STOP_TIME DATE
    ,WOK_AUTO_KEY NUMBER
    ON COMMIT DELETE ROWS

  • Create global temporary table in delete trigger

    Hi to all, I am triyng to create a global temporary table in trigger so i can hold all the deleted rows and do some stuff after the statement which uses the table that fires the trigger.
    In this way I am trying to avod mutating table error. but the following trigger gives error.
    create or replace
    TRIGGER TD_EKSINAVLAR
    FOR DELETE ON DERSSECIMI_EKSINAVLAR
    COMPOUND TRIGGER
    BEFORE STATEMENT IS
    BEGIN
    CREATE GLOBAL TEMPORARY TABLE DELETED_ROWS
    AS ( SELECT * FROM DERSSECIMI_EKSINAVLAR WHERE 1 = 2 )
    ON COMMIT DELETE ROWS;
    END BEFORE STATEMENT;
    BEFORE EACH ROW IS
    BEGIN
    NULL;
    END BEFORE EACH ROW;
    AFTER EACH ROW IS
    BEGIN
    NULL;
    END AFTER EACH ROW;
    AFTER STATEMENT IS
    BEGIN
    NULL;
    END AFTER STATEMENT;
    END TD_EKSINAVLAR;
    the error is
    Error(12,5): PLS-00103: Encountered the symbol "CREATE" when expecting one of the following: ( begin case declare exit for goto if loop mod null pragma raise return select update while with <an identifier> <a double-quoted delimited-identifier> <a bind variable> << continue close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe purge
    Please help me about the situation.
    Thanks in advance.
    Gokhan

    Karthick you are absolutly right
    Our main process is to migrate sql server 2000 database to oracle 11g and I am stuck with the triggers that reference to table that fires the trigger itself.
    Can you help me about how i can overcome mutating table errors using compund triggers? Espacially for the situation that one statement tries to update or delete multiple rows on a table.
    You can understand my logic from the above code. I want to hold all the affected rows in a table and in after statement body using a cursor on that table I want to do required changes on the table. How can I do that or how should I do ?
    regards.

  • ORA-00955 reports when I try to "create global temporary table" in windows

    Hi,
    When I try to run the sql in my oracle 9i server which is installed in a windows2000 machine,
    Create global temporary table test ...;
    For the first time, I can create table successfully.
    But I cannot access this table any more:
    drop table test;
    desc test;
    select * from test;
    In addition, if I try to create the table again, I got the error:
    ORA-00955: name is already used by an existing object
    While the same table can be created and dropped in another oracle9i server which is installed in Solaris 9 machine.
    So I suspect that this sould be a bug of window oracle server.
    Is there anyone who can confirm this?
    Or who can tell me how to report this bug to oracle?
    Thanks in advance.
    Please also refer the message at:
    http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:1046974576560
    If you search the text: "create global temporary table sess_event", you can see for the first time, the table is created successfully.
    But the ORA-00955 reports when the author try to create table for the second time.
    This problem is exactly the same as my problem.
    I have also made a search both in Google and in Oracle website and I cannot find any solution of it.

    Read      Metalink Note:68098.1 Subject:      Overview of Temporary Tables
    How did you difine the temporary tables? on commit delete rows are reserv rows?
    http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96590/adg03sch.htm#7794
    Jaffar
    Message was edited by:
    The Human Fly

  • What is the syntax for creating global temporary table using a select query

    hii
    I'm creating a global temporary table using a select query ..how to mention 'on commit preserve rows' that?
    create global temporary table t1 as select * from trn_ordbase on commit preserve rows;
    but this is invalid syntax,so how to mention on commit preserve rows in this???if i dont mention it ,by default its considering as on commit delete rows.
    Please help me out of this problem.

    create global temporary table t1 as select * from trn_ordbase on commit preserve rows;You CANNOT use this syntax.
    http://download-east.oracle.com/docs/cd/B19188_01/doc/B15917/sqcmd.htm
    http://download-east.oracle.com/docs/cd/B19188_01/doc/B15917/glob_tab.gif
    http://download-east.oracle.com/docs/cd/B19188_01/doc/B15917/cre_tabl.gif

  • Performance issue with Oracle Global Temporary table

    Hi
    Oracle version : 10.2.0.3.0 - Production
    We have an application in Java / Oracle. Users request comes in XML and oracle parser parses it and inserts it into Global temporary tables and then Business Stored procedure picks data from these GTT's and do the required processing.
    in the end data required response data is again inserted into response GTT's from which Response XML is generated.
    Question : Is the use of Global temporary tables in Oracle degrades performance as we have large number of GTT's in our application approx. 5-600 such tables.
    Regards,
    Vikas Kumar

    Hi All,
    Here is architecture of my application:
    Java application creates XML from the screen values and then inserts that XML
    into a framework(separate DB schema) table . then Java calls a Stored Procedure from same framework DB and in SP we have following steps.
    1. It fatches XML from the XML type table and inserts XML into screen specific XML TYPE table in the framework DB Schema. This table has a trigger which parses XML and then inserts XML values into GTT which are created in separate product schemas.
    2. it calls Product SP and then in product SP we have business logic. Product SP
    does the execution and then inserts response into Response GTT.
    3. Response XML is created by using XML generation function and response GTT.
    I hope u will understand my architeture this time and now let me know if GTT are good in this scenario or not. also please not that i need data in GTT only during execution and not after that. i dont want to do specific delete which i have to do if i am using normal tables.
    Regards,
    Vikas Kumar

  • How can i create a Global Temporary Table inside a Stored Procedure....

    Hi...
    I need to create a Global Temporary Table inside a Stored
    Procedure....
    I have no idea how to do that....
    Please....if u can send me a sample, send to me....
    Thanks a lot

    To create a global temporary table inside a stored procedure,
    the minimal syntax would be:
    CREATE OR REPLACE PROCEDURE procedure_name
    AS
    BEGIN
    EXECUTE IMMEDIATE 'CREATE GLOBAL TEMPORARY TABLE table_name'
    || '(column_name NUMBER)';
    END procedure_name;
    As Todd stated, it would probably be better to create the global
    temporary table outside of the procedure:
    SQL> CREATE GLOBAL TEMPORARY TABLE table_name
    2 (column_name NUMBER);
    Table created.
    You can also specify things like ON COMMIT PRESERVE ROWS or ON
    COMMIT DELETE ROWS.
    It may be that there is something else, like a PL/SQL table of
    records or a cursor, that would suit your needs better. It is
    difficult to guess without knowing what you want to do with it.

  • Creating a Global Temporary Table on non-default TEMP tablespace.

    Hello ,
    I am using Oracle 11g.
    I have a procedure which create global temporary tables for its functionality. As the data which is going in the global temporary table , mean the data which is going in the default TEMP tablesapce is too huge ..... billions of rows..
    So what i want to do is , I want to create the global temporary table in another TEMP2 tablespace ( which is not the default one) so the load of billions of rows of data will be shifted to TEMP2. The default TEMP tablespace will not be affected and it can be used for other transactions.
    Is this possible. Can i shift the global temporary table from TEMP( Default temp tablespace) to TEMP2 ( the non-default temp tablespace) ????
    Please guide me with proper solutions and examples ....
    Thanks in advance ..

    DBA4 wrote:
    Hello ,
    I am using Oracle 11g.
    I have a procedure which create global temporary tables for its functionality. As the data which is going in the global temporary table , mean the data which is going in the default TEMP tablesapce is too huge ..... billions of rows..
    So what i want to do is , I want to create the global temporary table in another TEMP2 tablespace ( which is not the default one) so the load of billions of rows of data will be shifted to TEMP2. The default TEMP tablespace will not be affected and it can be used for other transactions.
    Is this possible. Can i shift the global temporary table from TEMP( Default temp tablespace) to TEMP2 ( the non-default temp tablespace) ????
    Global temporary tables are instantiated in the temporary tablespace of the schema that inserts the data - not into "the default" temporary tablespace.
    Assume Schema1 creates a GTT and grants all on that table to schema2
    Assume schema1 also creates a procedure (authid owner, the default) to insert data into the GTT and grants execute on the procedure to schema2
    If schema2 executes: insert into schema1.gtt, the data will appear in the temporary tablespace of schema2
    If schema2 executes: execute schema1.procedure, the data will appear in the temporary tablespace of schema1
    So if you want to protect the "normal" temporary tablespace, you could just create a special temporary tablespace for the owner of the procedure.
    Regards
    Jonathan Lewis

  • Transaction with Global Temporary Table

    Problem:
    Transaction starts with few DML statements and in the middle we are calling a JAVA method which creates the dynamic global temporary table and proceeding with few DML statements, if one of the statement fails, in the exception clause we are trying to rollback and transactions after the DDL (create global temp table) are rolled back and transactions before the DDL (create global temp table) are committed.
    We cannot pre-create the global temporary table, since we do not know the number of temp table to be pre-created.
    How we can resolve this issue? The same concept works for SQL server.
    Example of our issue:
    --drop table table1 purge;
    --drop table t_id purge;
    Create table table1 (col1 number, col2 varchar2(20));
    Insert into table1 values (1, 'Test1');
    Create global temporary table t_id (id number);
    Insert into table1 values (2, 'Test2');
    Rollback;
    After the rollback you can see only the 'Test1' record.

    > We cannot pre-create the global temporary table, since we do not know the number of temp table to be pre-created.
    I don't see how one procedure could need to create an unknown number of temporary tables. Do they all have different (and unknown) column lists? Couldn't you combine them into a single table with a key to distinguish betweeen the different sets of rows?

  • Doubt with Global Temporary table

    hi,
    i have created a global temporary table with ON COMMIT DELETE ROWS option. in my Function in a loop i m inserting values into this Table, after that loop closes and then i m selecting some other values from DB. and in the last i am returning a ref cursor which is selecting values from temporary table i hav created.
    now the thing is i m not getting any values in the cursor.
    later I have created the table with ON COMMIT PRESERVE ROWS option, in this case cursor returning values,
    can anyone explain me the functionality, as per my knowledge global temporary table values are session specific so why i m not getting the values in the 1st case when i used ON COMMIT DELETE ROWS (same session).
    Thanks
    Piyush

    Ok, here's a simple example, like we'd like to see from you not working....
    First create a GTT with ON COMMIT DELETE ROWS...
    SQL> ed
    Wrote file afiedt.buf
      1* create global temporary table mytable (x number) on commit delete rows
    SQL> /
    Table created.Now a simple function that populates the GTT and returns a ref cursor to the data without doing any commits (hence the data should be there!)
    SQL> ed
    Wrote file afiedt.buf
      1  create or replace function pop_table return sys_refcursor is
      2    v_rc sys_refcursor;
      3  begin
      4    insert into mytable
      5    select rownum from dual connect by rownum <= 10;
      6    OPEN v_rc FOR SELECT x FROM mytable;
      7    RETURN v_rc;
      8* end;
    SQL> /
    Function created.So now we call the function and get a reference to our ref cursor...
    SQL> var v_a refcursor;
    SQL> exec :v_a := pop_table();
    PL/SQL procedure successfully completed.So, in principle, because no commits have been issued the ref cursor should return data...
    SQL> print v_a;
             X
             1
             2
             3
             4
             5
             6
             7
             8
             9
            10
    10 rows selected.... which it does.
    Now, what happens if we do that again...
    SQL> commit;
    Commit complete.
    SQL> exec :v_a := pop_table();
    PL/SQL procedure successfully completed.... but this time we commit before retrieving the data...
    SQL> commit;
    Commit complete.
    SQL> print v_a;
    ERROR:
    ORA-00600: internal error code, arguments: [kcbz_check_objd_typ_1], [0], [0], [1], [], [], [], []
    no rows selected
    SQL>Oracle has (correctly) lost reference to the data because of the commit.
    So show us what yours is doing.

  • Problem with global temporary table in Oracle 10g

    Hi All,
    I face a peculiar problem in Oracle 10g with respect to Global temporary table.
    Have Oracle 10g version in Production and 11g version in UAT.
    Table_
    create global temporary table TT_TEMPGPSMANUAL
      Col_1    VARCHAR2(50),
      Col_2    VARCHAR2(500),
      Col_3    VARCHAR2(50),
      Col_4    VARCHAR2(50),
      Col_5    VARCHAR2(15),
      Col_6    VARCHAR2(20),
      Col_7    VARCHAR2(250),
      Col_8    VARCHAR2(20),
      Col_9    VARCHAR2(15),
      Col_10   VARCHAR2(20),
      Flag     NUMBER,
      Col_11   INTEGER,
      Col_12   VARCHAR2(50)
    on commit preserve rows;So this should preserve the rows inserted into this table until the session ends.
    Have a webpage in front-end where in turn, it opens another page (session is carried through) and a few rows will be inserted to this table from the webpage (through a function) on submit and the current page will be closed.
    From the parent page, if I open the sub-page data inserted in the temporary table are held and displayed (another function to fetch the values in the Global Temp table).
    The Problem in Oracle 10g (Production) is, this is not happening properly. When I close and open the sub-page, not every time I get the data stored i.e if I close and open the page 10 times, atelast 4 times the data is missed in the page (I am not getting values from temp table) randomly.
    But this does not happen in UAT (which has Oracle 11g installed) as I get the data in the webpage consistently. After passing UAT, when we rolled out to Prod, getting this issue which we are unable to get what could be the reason.
    It is very hard to debug using GTT dynamically in prod. It takes time to get Oracle 11g installed in Prod.
    Can anyone suggest?
    Regards
    Deep

    935195 wrote:
    Also, I am opening the sub-page from the parent page (through a hyperlink). Then in this case, Would session will be changed from parent to subpage? (I am not aware exactly and have the impression that, as the second page is a child, I guess it would take the same session).I'm not sure what "sub-page" or "parent page" means to you. If you're just linking from one page to another, "parent" and "child" don't really make sense since page A links to page B and B links to A quite frequently.
    Assuming that you have to log in to access the site, it is likely that the two pages share the same middle tier application session. It is unlikely that the middle tier would hold the database session from the first request open waiting to see if the user eventually requested the second page. It is theoretically possible that you could code your middle tier this way but it is extremely unlikely that you would want to do so for a variety of reasons. So, when you say "would [the] session ... be changed", it is likely that the application session would be the same for both calls but that the database session would be different.
    Justin

  • Scalability issue with global temporary table.

    Hi All,
    Does create global temporary table would lock data disctionary like create table? if yes would not it be a scalable issue with multi user environment?
    Thanks and Regards,
    Rudra

    Billy  Verreynne  wrote:
    acadet wrote:
    am I correct in interpreting your response that we should be using GTT's in favour of bulk operations and collections and in memory operations? No. I said collections cannot scale. This means due to the fact that collections reside in expensive PGA memory, you cannot stuff large data volumes into them. Thus they do not make an ideal storage bin for temporary data (e.g. data loaded from file or a web service). GTTs otoh do not suffer from the same restrictions, can be indexed and offer vastly better scalability and so on.
    Multiple passes are often needed using such a data structure. Or filtering to find specific data. As a GTT is a SQL native, it offers a lot more flexibility and performance in this regard.
    And this makes sense - as where do we put out persistent data? Also in tables, but ones of a persistent and not temporary kind like a GTT.
    Collections are pretty useful - but limited in size and capability.
    Rudra states:
    I want to pull out few metrices from differnt tables and processing itIf this can't be achieved in a SQL statement, unless Rudra is a master of understatement then I would see GTT's as a waste of IO and programming effort. I agree.
    My comments however were about choices for a temporary data storage bin in PL/SQL.I agree with your general comments regarding temporary storage bins in Oracle, but to say that collections don't scale is putting to narrow a definition on scaling. True, collections can be resource intensive in terms of memory and CPU requirements, but their persistence will generally be much shorter than other types of temporary storage. Given the right characteristics, collections will scale and given the wrong characteristics GTT's wont scale.
    As you say it is all about choice. Getting back to the theme of this thread though, the original poster should be made aware that well designed and well coded applications are most likely to scale. Creating tables on the fly is generally considered bad practice and letting the database do what it does best, join tables in queries at the SQL level is considered good practice. The rest lies somewhere in between and knowing when to do which is why we get paid the big bucks (not). ;-)
    Regards
    Andre

  • Problem creating index on global temporary table

    Running Oracle DB Oracle9i Release 9.2.0.7.0.
    I'm trying to create 3 indexes on a temporary table, the first index creates fine but the other remaining 2 result in the following error:
    ERROR at line 1: ORA-00600: internal error code, arguments: [kftts2bz_many_files], [0], [20], [], [], [], [], []
    Have tried searching with not much success, any pointers, tips, hints would be appreciated, below is the table and the indexes:-
    create global temporary TABLE contacts (
    ID VARCHAR2(20) NOT NULL,
    DOB VARCHAR2(8),
    HH_LASTNAME VARCHAR2(90),
    PERSON VARCHAR2(10) NOT NULL,
    CONT_JOB VARCHAR2(90) NOT NULL,
    SOURCE VARCHAR2(8) NOT NULL,
    ADS VARCHAR2(8) NOT NULL,
    CONT VARCHAR2(8) NOT NULL,
    SRCPERSONID VARCHAR2(15),
    FIRSTNAME VARCHAR2(90),
    MIDDLENAME VARCHAR2(90),
    LASTNAME VARCHAR2(90),
    FULLNAME VARCHAR2(90),
    TITLE VARCHAR2(50),
    SALUTATION VARCHAR2(90),
    ) on commit delete rows;
    create index i_contact_1 on contacts(dob, soundex(hh_lastname ));
    create index i_contact_pk on contacts(id, person, cont_job, source, ads, cont);
    create index i_contact_2 on contacts(srcpersonid, source);

    Bug 3238525 - Upgrade from 9.0 can leave corruptdata for global temporary table indices
    ORA-600 [kftts2bz_many_files]
         Doc ID:      285592.1

  • Need help with global temporary table

    Can anyone please help, the following line of code :
    CREATE GLOBAL TEMPORARY TABLE tbl_bulknodes_temp ( obt_uuid VARCHAR2 ) ON COMMIT DELETE ROWS
    Yeilds the following error both in PL/SQL and running it in SQL PLUS
    Error starting at line 1 in command:
    CREATE GLOBAL TEMPORARY TABLE tbl_bulknodes_temp ( obt_uuid VARCHAR2 ) ON COMMIT DELETE ROWS
    Error report:
    SQL Error: ORA-00906: missing left parenthesis

    Hi,
    You have to put length to varchar2 column...
    SQL> CREATE GLOBAL TEMPORARY TABLE tbl_bulknodes_temp ( obt_uuid VARCHAR2(30) ) ON COMMIT DELETE ROWS;
    Table created
    SQL> CREATE GLOBAL TEMPORARY TABLE tbl_bulknodes_temp2 ( obt_uuid VARCHAR2 ) ON COMMIT DELETE ROWS;
    CREATE GLOBAL TEMPORARY TABLE tbl_bulknodes_temp2 ( obt_uuid VARCHAR2 ) ON COMMIT DELETE ROWS
    ORA-00906: missing left parenthesis
    SQL> Regards,

Maybe you are looking for

  • Audio settings

    How do you make the audio setting work? I cannot change my audio capture setting it is in gray and I cannot access it. HELP. I am running an IMac IC with FCE 4 TIA.

  • BAPI_DOCUMENT_CHANGE2 and delete link

    Hi, I am trying to delete the document's link. But I can not do this operation. My code is;   ls_doc-documenttype = 'VD2'.   ls_doc-documentnumber = '0000000100000000000000344'.   ls_doc-documentversion = '00'.   ls_doc-documentpart = '000'.   ls_doc

  • Errors on executing ncomp

    if I start ncomp I got the following error message: error in: DownloadClass :java.sql.SQLException: ORA-29532: Java-Aufruf durch nicht abgefangene Java-Exception beendet: java.security.AccessControlException: the Permission (oracle.aurora.rdbms.Handl

  • Application express from remote node

    Hi I have installed apex on 10g. I created one devkoper account. I access from my own computer where apex is installed as http://127.0.0.1:8080/apex I want my devloper to access it as http://arun:8080/apex from his computer. Kindly help so that he ca

  • Why i can't install muse cc? ,the purchasing process is complete but the creative cloud window just stays charging ...

    why i can't install muse cc? ,the purchasing process is complete but the creative cloud window just stays charging... i already tried with chrome and safari navigator..