as simultaneously as I could make it on W2K, 9.0.1.2 (which means the first one was running as I started the second one)
no problems. Now I ran as sys and changed it to x$dual because I got errors (table or view not found) when I ran as system and used x_$dual so I don't know if that changed the test --- "Khedr, Waleed" <[EMAIL PROTECTED]> wrote: > Never mess up with Oracle's memory: > > It seems that x$dual is not designed for concurrent access. When I > try to > run the code below in two simultaneous windows the first one comes > back and > the second crash (8173): > > declare > nn number; > ss1 date; > ss2 date; > begin > --- > ss1 := sysdate; > for i in 1..100000 loop > select 2 into nn from sys.x_$dual; > end loop; > ss2 := sysdate; > dbms_output.put_line('run time using table dual in > centiseconds='||(ss2 - > ss1 ) * 24 * 60 * 60 * 100); > end; > > > If the x$dual gets replaced by dual it works fine. > > Can any one duplicate this? > > > Thanks > > > Waleed > > > > -----Original Message----- > Sent: Tuesday, April 23, 2002 6:49 PM > To: Multiple recipients of list ORACLE-L > > > I am writing a paper on application efficiency and I have a number of > simple > tests in that paper that illustrates that in a very efficient > application > the > switch to x$dual can make around a 70-80 percent improvent. But > beaware: the > test suite only accesses x$dual and not other tables so the impact is > large > and the application is written in the most efficient way. Running > the same > test but in a worse efficiency case. shows only a 2-3 percent gain > ...... > > Anjo. > > > "Khedr, Waleed" wrote: > > > Can you guys tell me about all the overhead to resolve the view > definition > > to reach the magical X$dual table? > > > > Waleed > > > > -----Original Message----- > > Sent: Tuesday, April 23, 2002 12:58 PM > > To: Multiple recipients of list ORACLE-L > > > > Redefine the view to work on dual and pay the price !!! > > Checked it on oracle 8.1.6 and 9.0.1. > > I will take the risk that maybe in some future date this will not > work > > if it can save a lot of resources now. > > > > Yechiel Adar > > Mehish > > > > ----- Original Message ----- > > To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]> > > Sent: Tuesday, April 23, 2002 3:13 PM > > > > > what would you do if Oracle removed this x$dual or made it > multiple row > > > table in future upgrades? > > > > > > -----Original Message----- > > > To: Multiple recipients of list ORACLE-L > > > Sent: 4/23/02 4:08 AM > > > > > > Hello Gaja > > > > > > Thanks for the detailed info. > > > I created a view and did grant to public. > > > I did 10 selects and they did only 2 buffers get. > > > BTW - describe on x$dual does not work but select * works. > > > > > > Yechiel Adar > > > Mehish > > > > > > ----- Original Message ----- > > > To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]> > > > Sent: Monday, April 22, 2002 8:15 PM > > > > > > > > > > Hello Yechiel, > > > > > > > > X$DUAL is an Oracle-internal table "in the SGA" and > > > > will not be shown in an ALL_OBJECTS listing. > > > > Obviously, you need to be SYS to see this. You can do > > > > a describe as SYS and you will see it. Which is the > > > > reason why I recommended creating a view and a public > > > > synonym on the view, so that the application may > > > > reference it without any issues. > > > > > > > > Cheers, > > > > > > > > Gaja > > > > > > > > --- Yechiel Adar <[EMAIL PROTECTED]> wrote: > > > > > Hello Gaja > > > > > > > > > > I could not find x$dual. Did select on all_objects > > > > > got zip. > > > > > Oracle 8.1.6.3.4 on NT. > > > > > > > > > > Yechiel Adar > > > > > Mehish > > > > > > > > > > ----- Original Message ----- > > > > > To: Multiple recipients of list ORACLE-L > > > > > <[EMAIL PROTECTED]> > > > > > Sent: Sunday, April 21, 2002 8:28 PM > > > > > > > > > > > > > > > > Hi Yechiel, > > > > > > > > > > > > Any full-table-scan in Oracle 8i (or below) > > > > > consumes 4 > > > > > > LIOs to the segment header. This number has > > > > > reduced to > > > > > > 2 in 9i. Given that the 1 row that you are going > > > > > after > > > > > > is in 1 data block, there is 1 LIO for the data > > > > > block > > > > > > itself, given you a total of 5 LIOs. You can > > > > > verify > > > > > > this by setting 10046 for the session and looking > > > > > at > > > > > > the trace output. > > > > > > > > > > > > The workaround is to reference x$dual in your > > > > > > application. Alternatively, you can create a view > > > > > on > > > > > > x$dual, create a synonym for it and then go from > > > > > > there. You will incur some I/O for the first > > > > > access of > > > > > > the query (with the synonym), but subsequent > > > > > accesses > > > > > > will incur 0 LIOs against x$dual. > > > > > > > > > > > > Cheers, > > > > > > > > > > > > Gaja > > > > > > --- Yechiel Adar <[EMAIL PROTECTED]> wrote: > > > > > > > I did two statspack snapshots, one hour and > > > > > forty > > > > > > > minutes apart. > > > > > > > Then I generated a report and loaded it into > > > > > > > oraperf.com. > > > > > > > In the report I saw that the two SQL statements > > > > > that > > > > > > > where executed the most > > > > > > > times where: > > > > > > > > > > > > > > Select xxxx.currval from dual; > > > > > > > > > > > > > > Select xxxx.nextval from dual;. > > > > > > > > > > > > > > Each one was executed about 90,000 times with 5 > > > > > > > buffer gets per execution. > > > > > > > The net result was about 950,000 buffer get for > > > > > > > nextval and currval. > > > > > > > > > > > > > > My question is: > > > > > > > Why should there be about 5 buffer gets per > > > > > > > execution? > > > > > > > > > > > > > > Yechiel Adar > > > > > > > Mehish > > > > > > > -- > > > > > > > Please see the official ORACLE-L FAQ: > > > > > > > http://www.orafaq.com > > > > > > > -- > > > > > > > Author: Yechiel Adar > > > > > > > INET: [EMAIL PROTECTED] > > > > > > > > > > > > > > Fat City Network Services -- (858) 538-5051 > > > > > FAX: > === message truncated === __________________________________________________ Do You Yahoo!? Yahoo! Games - play chess, backgammon, pool and more http://games.yahoo.com/ -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Rachel Carmichael INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).