-----Original Message----- From: wikitech-l-bounces@lists.wikimedia.org [mailto:wikitech-l-bounces@lists.wikimedia.org] On Behalf Of Domas Mituzas Sent: 24 December 2010 13:42 To: Wikimedia developers Subject: Re: [Wikitech-l] Using MySQL as a NoSQL
Hi!
It seems from my tinkering that MySQL query cache handling is circumvented via HandlerSocket.
On busy systems (I assume we talk about busy systems, as discussion is about HS) query cache is usually eliminated anyway. Either by compiling it out, or by patching the code not to use qcache mutexes unless it really really is enabled. In worst case, it is just simply disabled. :)
So if you update/insert/delete via HandlerSocket, then
query via SQL
your not guarenteed to see the changes unless you use
SQL_NO_CACHE.
You are probably right. Again, nobody cares about qcache at those performance boundaries.
Domas
Ah, interesting. The only reason I took at it was because you don't have to pfaff with encoding/escaping values* the way you have to SQL. SQL injection vulnerabilities don't exist.
* And the protocol handles binary values which normally have to pfaff about getting in and out of MySQL with the various PHP apis.
Does seem a bit specialised, could have a persistent cache, maybe as a session handler.
Jared