Hibernate & EHCache: ¿cómo funciona maxElementsInMemory?

He configurado EHCache con un DefaultCache (para elementos), un StandardQueryCache (para consultas) y UpdateTimestampsCache (para lo que creo es hacer un seguimiento de las actualizaciones de la base de datos ... pero realmente no obtengo lo que hace exactamente).

He establecido maxElementsInMemory para cada uno de estos cachés, pero lo que no entiendo es lo que este número controla para el StandardQueryCache y para el UpdateTimestampsCache. Entiendo que la cantidad de entidades que se pueden almacenar en la memoria caché predeterminada no debe exceder de 10000, pero la memoria caché de consulta no almacena los elementos. Almacena las claves primarias (hasta donde yo entiendo).

¿Esto significa entonces que maxElementsInMemory para StandardQueryCache controla el número de "filas" de los resultados, o controla el número de pares de claves primarias para los elementos que puede tener?

¿Qué pasa con el UpdateTimestampsCache? ¿Hace un seguimiento de la última vez que se actualizó una entidad, la última vez que se actualizó una tabla ... o algo más? ¿Qué número debo usar para maxElementsInMemory para este?

¡Gracias!

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="true" monitoring="autodetect"     dynamicConfig="true">
  <defaultCache 
    maxElementsInMemory="10000"
    eternal="false"
    timeToIdleSeconds="3600"
    timeToLiveSeconds="3600">
  </defaultCache>

  <cache
    name="org.hibernate.cache.internal.StandardQueryCache"
    maxElementsInMemory="10000"
    eternal="false"
    timeToIdleSeconds="3600"
    timeToLiveSeconds="3600">
  </cache>

  <cache
    name="org.hibernate.cache.spi.UpdateTimestampsCache"
    maxElementsInMemory="10000"
    eternal="true">
  </cache>

</ehcache>