Some questions were raised regarding how to deal with object caching
when using a database from multiple processes and/or multiple
computers. I wanted to clarify that this isn't typically an issue
because only a single command fetches the existing object, the get
command. It is assumed when you use this class method that you want
to get the existing fetched object if its there already. Every other
command that queries the database fetches the data in a SELECT rather
than going to the object cache.
The main purpose of the object cache is to hold existing retrieved
objects for attribute access. If you wanted to force a re-fetch of
the data on an object the next time an attribute is accessed you can
call the expire() function on an object.