transaction speed and size with Spatial index
- From: "Joe Smith" <joe_dba@xxxxxxxxxxx>
- To: oracle-l@xxxxxxxxxxxxx
- Date: Thu, 19 Jan 2006 13:54:34 -0600
List,
I need to make a transaction faster or determine that it cannot be made
faster. Resulting in smaller transaction size and/or rewrite the sql
statement. The situation is I have a db server running Solaris 8 with
Oracle 9.2.0.5.0 EE and a web server running Weblogic. The web server uses
connection pooling.
When a specific transaction starts, the process ( user or connection ) will
insert one record into a catalog table. This table includes an Oracle Text
field and a Spatial field. At the same time it is updating 10 to 15 other
tables in the db. Mostly under the weblogic user account.
What happens is the catalog table record is being constantly updated with
latitude and longitude values ( i.e. the Spatial index ). As the update is
occurring to the catalog table, the connection pool starts creating 100 to
200 users and trying to update the same record in the catalog table. This
is the way the app works because the app is constantly trying to track the
position. This record in the catalog table tracks lat/long position. So,
you see what happens. You can use dba_waiters and dba_blockers view created
with catblock.sql and see massive blocking and waiting. If you leave the
system alone, i.e. don?t try to update the record, the system and updates on
the record will catch up.
So, how do I tune the transaction?
I have already read Kyte?s new book and the chapter on transactions. The
only wait event you see in the trace file is enqueue on the catalog table.
Which relates to ?TX? lock on the record.
How do I determine the time a transaction takes? From the beginning to
commit or rollback. And also the size of the transaction as a side bar. In
v$transaction there is a start time col, but I don?t see an end time col.
I am also looking at oracle?s note on TX lock tuning, i.e. primary key
problems, ITL slots , there is no bitmap index, etc?
Has anybody seen this problem before? Has anybody tried to track a position
in a "master table". And is it related to the time it takes to update the
Spatial index?
Thanks.
_________________________________________________________________
Don?t just search. Find. Check out the new MSN Search!
http://search.msn.click-url.com/go/onm00200636ave/direct/01/
--
//www.freelists.org/webpage/oracle-l
Other related posts: