Steve,
Another issue might be the way you execute the query on the client side.
Do you use Statement.execute() or Statement.executeQuery()?
If I remember well, cache might not work with Statement.execute() but
only with executeQuery().
Hope this helps,
Emmanuel
Thanks for the response! Here's what I've tried (see below), none of
these (and more) seem to be causing any caching. Also, strange, I
enabled DEBUG level logging on
log4j.logger.org.continuent.sequoia.controller.cache=DEBUG,
Console,Filetrace
but only saw the following line printed twice, no other DEBUGs:
2008-01-25 12:33:39,469 DEBUG Trace.java:69 - Cache is empty. I sleep.
So I thought I'd do a little digging into the code. Using this config:
<ResultCache granularity="table"/>
I fired up the Controller using jdb and set up breakpoints for every
method in ResultCache and ResultCacheTable. I started up the process,
and in another window started up my virtualdatabase. I did get a few
stop points while the vdb was loading, but none when I tried my
"select ..." statement. Very weird. It's like the caching code is
never being called.
About RelaxedCaching timeout, could you double check that this value
is not in milliseconds? In that case that would mean keeping the
entry of the cache for less than a second and explain the cache miss.
Yes, I took a look at
sequoia/src/org/continuent/sequoia/controller/cache/result/ResultCacheFactory.java
and I see now that the timeout is in ms. The dtd doc should be
updated, it says seconds.
I will post back as I find more, thanks for the suggestions...
Steve
<ResultCache granularity="table">
<DefaultResultCacheRule timestampResolution="60000">
<RelaxedCaching timeout="600000" keepIfNotDirty="true"/>
</DefaultResultCacheRule>
</ResultCache>
<ResultCache/>
<ResultCache granularity="table"/>
<!-- from rubis-cache-database.xml -->
<ResultCache granularity="database" maxNbOfEntries="0"
pendingTimeout="0">
<DefaultResultCacheRule timestampResolution="36000">
<EagerCaching/>
</DefaultResultCacheRule>
</ResultCache>
<!-- from rubis-cache-table.xml -->
<ResultCache granularity="table" maxNbOfEntries="0"
pendingTimeout="0">
<DefaultResultCacheRule timestampResolution="36000">
<EagerCaching/>
</DefaultResultCacheRule>
</ResultCache>
On Jan 25, 2008, at 12:27 AM, Emmanuel Cecchet wrote:
Steve,
<ResultCache granularity="columnUnique">
<DefaultResultCacheRule timestampResolution="1000">
<RelaxedCaching timeout="600" keepIfNotDirty="true"/>
</DefaultResultCacheRule>
</ResultCache>
columnUnique is not supported anymore, you should try with 'table'
first.
About RelaxedCaching timeout, could you double check that this value
is not in milliseconds? In that case that would mean keeping the
entry of the cache for less than a second and explain the cache miss.
Keep us posted with your finding,
Emmanuel
--
Emmanuel Cecchet - Research scientist
EPFL - LABOS/DSLAB - IN.N 317
Phone: +41-21-693-7558
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia
--
Emmanuel Cecchet - Research scientist
EPFL - LABOS/DSLAB - IN.N 317
Phone: +41-21-693-7558
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia