MySQL Forums
Forum List  »  Performance

Re: Monitoring large resultsets
Posted by: Aftab Khan
Date: July 12, 2012 08:55AM

>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

Options: ReplyQuote


Subject
Views
Written By
Posted
2057
July 10, 2012 10:26PM
1123
July 11, 2012 02:01AM
903
July 12, 2012 02:19AM
954
July 12, 2012 03:37AM
944
July 12, 2012 04:13AM
989
July 12, 2012 05:49AM
1121
July 12, 2012 07:02AM
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.