Re: Monitoring large resultsets
>When a write to a table occurs, it has to scan through all that to find any cached entries for that table. That takes a noticeable amount of time.
That's not true, query cache is not scanned instead hash key is used to locate entries:
Query_cache object consists of
- query cache memory pool (cache)
- queries hash (queries)
- tables hash (tables)
- list of blocks ordered as they allocated in memory
..
For quick invalidation of queries all query are linked in lists on used
database tables basis (when table will be changed (insert/delete/...)
this queries will be removed from cache). So global eXclusive lock is used while invalidation take place
Subject
Views
Written By
Posted
2057
July 10, 2012 10:26PM
1123
July 11, 2012 02:01AM
933
July 12, 2012 12:22AM
903
July 12, 2012 02:19AM
1019
July 12, 2012 03:06AM
954
July 12, 2012 03:37AM
945
July 12, 2012 03:51AM
944
July 12, 2012 04:13AM
929
July 12, 2012 05:35AM
989
July 12, 2012 05:49AM
930
July 12, 2012 06:05AM
1121
July 12, 2012 07:02AM
899
July 12, 2012 04:41PM
938
July 13, 2012 07:50PM
923
July 14, 2012 02:43AM
907
July 12, 2012 08:13AM
Re: Monitoring large resultsets
903
July 12, 2012 08:55AM
989
July 12, 2012 12:12PM
Sorry, you can't reply to this topic. It has been closed.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion
of Oracle or any other party.