In the ResultSet cache, the result set of each database query is stored in a memory cache (called in-memory cache), and while the cache does not expire, it is queried in each read operation. Also, the database doesn't need to be accessed. Then, in the in-memory cache, a pair <key, value> is stored, where the key is the query (including the parameters), and the value is the result set of this query.
The cache is activated using Database access caching property and the validity of the cache is managed through the Change frequency property of the tables involved in the query. In fact, in a join of tables, the Change frequency property which is considered is the lowest of all of the tables involved.
It applies to Web applications and the server side (Restful services) of SD apps.
Caching in GeneXus applications