This week's book giveaway is in the Mac OS forum. We're giving away four copies of a choice of "Take Control of Upgrading to Yosemite" or "Take Control of Automating Your Mac" and have Joe Kissell on-line! See this thread for details.
The session cache is a cache of objects loaded over the course of a session. So any calls to session.get or session.load will use this. The query cache is a cache of queries and identifiers of results, the objects themselves have not been loading into the session so are not cached. It makes no sense to use a query cache unless you also use a second level cache.