You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jcs-dev@jakarta.apache.org by as...@apache.org on 2006/05/17 23:35:41 UTC
svn commit: r407377 - in
/jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc:
JDBCDiskCache.java JDBCDiskCacheManager.java ShrinkerThread.java
Author: asmuts
Date: Wed May 17 14:35:40 2006
New Revision: 407377
URL: http://svn.apache.org/viewvc?rev=407377&view=rev
Log:
improved shrinker log message
created a separate shrinker thread per table.
Modified:
jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCache.java
jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCacheManager.java
jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/ShrinkerThread.java
Modified: jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCache.java
URL: http://svn.apache.org/viewvc/jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCache.java?rev=407377&r1=407376&r2=407377&view=diff
==============================================================================
--- jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCache.java (original)
+++ jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCache.java Wed May 17 14:35:40 2006
@@ -1111,6 +1111,21 @@
return stats;
}
+ /**
+ * Returns the name of the table.
+ *
+ * @return the table name or UNDEFINED
+ */
+ protected String getTableName()
+ {
+ String name = "UNDEFINED";
+ if ( this.getJdbcDiskCacheAttributes() != null )
+ {
+ name = this.getJdbcDiskCacheAttributes() .getTableName();
+ }
+ return name;
+ }
+
/**
* For debugging.
Modified: jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCacheManager.java
URL: http://svn.apache.org/viewvc/jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCacheManager.java?rev=407377&r1=407376&r2=407377&view=diff
==============================================================================
--- jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCacheManager.java (original)
+++ jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/JDBCDiskCacheManager.java Wed May 17 14:35:40 2006
@@ -18,6 +18,7 @@
import java.util.Enumeration;
import java.util.Hashtable;
+import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -53,7 +54,12 @@
*/
private ClockDaemon shrinkerDaemon;
- private ShrinkerThread shrinkerThread;
+ /**
+ * A map of table name to shrinker threads. This allows each table to have a
+ * different setting. It assumes that there is only one jdbc disk cache
+ * auxiliary defined per table.
+ */
+ private Map shrinkerThreadMap = new Hashtable();
/**
* Constructor for the HSQLCacheManager object
@@ -152,13 +158,17 @@
shrinkerDaemon.setThreadFactory( new MyThreadFactory() );
}
+ ShrinkerThread shrinkerThread = (ShrinkerThread) shrinkerThreadMap.get( cattr.getTableName() );
if ( shrinkerThread == null )
{
shrinkerThread = new ShrinkerThread();
+ shrinkerThreadMap.put( cattr.getTableName(), shrinkerThread );
+
long intervalMillis = Math.max( 999, cattr.getShrinkerIntervalSeconds() * 1000 );
if ( log.isInfoEnabled() )
{
- log.info( "Setting the shrinker to run every [" + intervalMillis + "] ms." );
+ log.info( "Setting the shrinker to run every [" + intervalMillis + "] ms. for table ["
+ + cattr.getTableName() + "]" );
}
shrinkerDaemon.executePeriodically( intervalMillis, shrinkerThread, false );
}
@@ -177,9 +187,7 @@
JDBCDiskCache raf = (JDBCDiskCache) caches.get( name );
if ( raf != null )
{
-
raf.dispose();
-
}
}
@@ -225,7 +233,6 @@
class MyThreadFactory
implements ThreadFactory
{
-
/*
* (non-Javadoc)
*
Modified: jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/ShrinkerThread.java
URL: http://svn.apache.org/viewvc/jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/ShrinkerThread.java?rev=407377&r1=407376&r2=407377&view=diff
==============================================================================
--- jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/ShrinkerThread.java (original)
+++ jakarta/jcs/trunk/src/java/org/apache/jcs/auxiliary/disk/jdbc/ShrinkerThread.java Wed May 17 14:35:40 2006
@@ -84,8 +84,8 @@
if ( log.isInfoEnabled() )
{
- log.info( "Deleted [" + deleted + "] expired for region [" + cache.getCacheName() + "] in "
- + ( end - start ) + " ms." );
+ log.info( "Deleted [" + deleted + "] expired for region [" + cache.getCacheName() + "] for table ["
+ + cache.getTableName() + "] in " + ( end - start ) + " ms." );
}
// don't pause after the last call to delete expired.
---------------------------------------------------------------------
To unsubscribe, e-mail: jcs-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jcs-dev-help@jakarta.apache.org