[Opensymphony-oscache] Getting a UTFDataFormatException when file size is greater than about 6
Nigel Boyes <[email protected]>
| Newsgroups | gmane.comp.java.open-symphony.os-cache |
|---|---|
| Message-ID | <13172650.1113293374051.JavaMail.os-j2ee@opensymphony01.contegix.com> |
I tried changing it to use the HashDiskPersistenceListener but the same error recurred. First 2 lines of the error in the log4j file reads: 2005/04/12 08:51:37.176 ERROR com.opensymphony.oscache.base.algorithm.AbstractConcurrentReadCache - [oscache] Exception persisting /363360_-2_content com.opensymphony.oscache.base.persistence.CachePersistenceException: Unable to write '/opt/resin/doc/ms/WEB-INF/oscache_cache/application/C6D806593708156F58AE8ADA0FA28D7D.cache' in the cache. Exception: java.io.UTFDataFormatException, Message: null The configuration file reads: # CACHE IN MEMORY # # If you want to disable memory caching, just uncomment this line. # cache.memory=false # CACHE KEY # # This is the key that will be used to store the cache in the application # and session scope. # # If you want to set the cache key to anything other than the default # uncomment this line and change the cache.key # # cache.key=__oscache_cache # USE HOST DOMAIN NAME IN KEY # # Servers for multiple host domains may wish to add host name info to # the generation of the key. If this is true, then uncomment the # following line. # # cache.use.host.domain.in.key=true # CACHE LISTENERS # # These hook OSCache events and perform various actions such as logging # cache hits and misses, or broadcasting to other cache instances across a cluster. # See the documentation for further information. # # cache.event.listeners=com.opensymphony.oscache.plugins.clustersupport.JMSBroadcastingListener, \ # com.opensymphony.oscache.extra.CacheEntryEventListenerImpl, \ # com.opensymphony.oscache.extra.CacheMapAccessEventListenerImpl, \ # com.opensymphony.oscache.extra.ScopeEventListenerImpl # CACHE PERSISTENCE CLASS # # Specify the class to use for persistence. If you use the supplied DiskPersistenceListener, # don't forget to supply the cache.path property to specify the location of the cache # directory. # # If a persistence class is not specified, OSCache will use memory caching only. # ##cache.persistence.class=com.opensymphony.oscache.plugins.diskpersistence.DiskPersistenceListener cache.persistence.class=com.opensymphony.oscache.plugins.diskpersistence.HashDiskPersistenceListener # CACHE DIRECTORY # # This is the directory on disk where caches will be stored by the DiskPersistenceListener. # it will be created if it doesn't already exist. Remember that OSCache must have # write permission to this directory. # # Note: for Windows machines, this needs \ to be escaped # ie Windows: # cache.path=c:\\myapp\\cache # or *ix: # cache.path=/opt/myapp/cache # cache.path=/opt/resin/doc/ms/WEB-INF/oscache_cache # CACHE ALGORITHM # # Default cache algorithm to use. Note that in order to use an algorithm # the cache size must also be specified. If the cache size is not specified, # the cache algorithm will be Unlimited cache. # # cache.algorithm=com.opensymphony.oscache.base.algorithm.LRUCache # cache.algorithm=com.opensymphony.oscache.base.algorithm.FIFOCache # cache.algorithm=com.opensymphony.oscache.base.algorithm.UnlimitedCache # CACHE SIZE # # Default cache size in number of items. If a size is specified but not # an algorithm, the cache algorithm used will be LRUCache. # cache.capacity=10000 # CACHE UNLIMITED DISK # Use unlimited disk cache or not. The default value is false, which means # the disk cache will be limited in size to the value specified by cache.capacity. # # cache.unlimited.disk=false # CACHE BLOCKING # When a request is made for a stale cache entry, it is possible that another thread is already in the process # of rebuilding that entry. This setting specifies how OSCache handles the subsequent 'non-building' threads. # The default behaviour (cache.blocking=false) is to serve the old content to subsequent threads until the # cache entry has been updated. This provides the best performance (at the cost of serving slightly stale data). # When blocking is enabled, threads will instead block until the new cache entry is ready to be served. # Once the new entry is put in the cache the blocked threads will be restarted and given the new entry. # Note that even if blocking is disabled, when there is no stale data available to be served threads will # block until the data is added to the cache by the thread that is responsible for building the data. # SBC note: On the staging server we always want the latest version so enable on this server # cache.blocking=true # JMS CLUSTER PROPERTIES # # Configuration properties for JMS clustering. See the clustering documentation # for more information on these settings. # #cache.cluster.jms.topic.factory=java:comp/env/jms/TopicConnectionFactory #cache.cluster.jms.topic.name=java:comp/env/jms/OSCacheTopic #cache.cluster.jms.node.name=node1 # JAVAGROUPS CLUSTER PROPERTIES # # Configuration properites for the JavaGroups clustering. Only one of these # should be specified. Default values (as shown below) will be used if niether # property is set. See the clustering documentation and the JavaGroups project # (www.javagroups.com) for more information on these settings. # #cache.cluster.properties=UDP(mcast_addr=231.12.21.132;mcast_port=45566;ip_ttl=32;mcast_send_buf_size=150000;mcast_recv_buf_size=80000):PING(timeout=2000;num_initial_members=3):MERGE2(min_interval=5000;max_interval=10000):FD_SOCK:VERIFY_SUSPECT(timeout=1500):pbcast.NAKACK(gc_lag=50;retransmit_timeout=300,600,1200,2400,4800):pbcast.STABLE(desired_avg_gossip=20000):UNICAST(timeout=5000):FRAG(frag_size=8096;down_thread=false;up_thread=false):pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;shun=false;print_local_addr=true) #cache.cluster.multicast.ip=231.12.21.132 --------------------------------------------------------------------- Posted via Jive Forums http://forums.opensymphony.com/thread.jspa?threadID=1469&messageID=4574#4574