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
2052
July 10, 2012 10:26PM
1122
July 11, 2012 02:01AM
902
July 12, 2012 02:19AM
953
July 12, 2012 03:37AM
943
July 12, 2012 04:13AM
987
July 12, 2012 05:49AM
1119
July 12, 2012 07:02AM
936
July 13, 2012 07:50PM
920
July 14, 2012 02:43AM
906
July 12, 2012 08:13AM
Re: Monitoring large resultsets
901
July 12, 2012 08:55AM
987
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.