Page 1 of 1

StoreAccessException in mailbox.log

Posted: Thu Jun 27, 2019 6:48 pm
by apiening
Hi there,
I stumbled upon a Java exception in my /opt/zimbra/log/mailbox.log which occurs multiple times:

Code: Select all

CompoundCachingTier - Error overflowing '5402e9d7-2443-476c-ae69-aad64bb221f0:319:1842009:73' into lower caching tier org.ehcache.impl.internal.store.offheap.OffHeapStore@e2c627e
org.ehcache.core.spi.store.StoreAccessException: The element with key '5402e9d7-2443-476c-ae69-aad64bb221f0:319:1842009:73' is too large to be stored in this offheap store.
        at org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry(AbstractOffHeapStore.java:1090)
        at org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.installMapping(AbstractOffHeapStore.java:1067)
        at org.ehcache.impl.internal.store.tiering.CompoundCachingTier$1.onInvalidation(CompoundCachingTier.java:69)
        at org.ehcache.impl.internal.store.heap.OnHeapStore$20.onInvalidation(OnHeapStore.java:921)
        at org.ehcache.impl.internal.store.heap.OnHeapStore$26.apply(OnHeapStore.java:1575)
        at org.ehcache.impl.internal.store.heap.OnHeapStore$26.apply(OnHeapStore.java:1568)
        at org.ehcache.impl.internal.concurrent.ConcurrentHashMap.computeIfPresent(ConcurrentHashMap.java:1793)
        at org.ehcache.impl.internal.store.heap.SimpleBackend.computeIfPresent(SimpleBackend.java:124)
        at org.ehcache.impl.internal.store.heap.OnHeapStore.evict(OnHeapStore.java:1568)
        at org.ehcache.impl.internal.store.heap.OnHeapStore.enforceCapacity(OnHeapStore.java:1535)
        at org.ehcache.impl.internal.store.heap.OnHeapStore.getOrComputeIfAbsent(OnHeapStore.java:723)
        at org.ehcache.impl.internal.store.tiering.CompoundCachingTier.getOrComputeIfAbsent(CompoundCachingTier.java:112)
        at org.ehcache.impl.internal.store.tiering.TieredStore.get(TieredStore.java:110)
        at org.ehcache.core.Ehcache.get(Ehcache.java:167)
        at com.zimbra.cs.imap.EhcacheImapCache.get(EhcacheImapCache.java:138)
        at com.zimbra.cs.imap.EhcacheImapCache.get(EhcacheImapCache.java:40)
        at com.zimbra.cs.imap.ImapSessionManager.deserialize(ImapSessionManager.java:799)
        at com.zimbra.cs.imap.ImapListener.reload(ImapListener.java:719)
        at com.zimbra.cs.imap.ImapListener.getImapFolder(ImapListener.java:405)
        at com.zimbra.cs.imap.ImapSessionManager.duplicateExistingSession(ImapSessionManager.java:482)
        at com.zimbra.cs.imap.ImapSessionManager.duplicateExistingSession(ImapSessionManager.java:471)
        at com.zimbra.cs.imap.ImapSessionManager.openFolder(ImapSessionManager.java:315)
        at com.zimbra.cs.imap.ImapHandler.setSelectedFolder(ImapHandler.java:1195)
        at com.zimbra.cs.imap.ImapHandler.selectFolder(ImapHandler.java:1783)
        at com.zimbra.cs.imap.ImapHandler.doSELECT(ImapHandler.java:1749)
        at com.zimbra.cs.imap.ImapHandler.executeRequest(ImapHandler.java:836)
        at com.zimbra.cs.imap.NioImapHandler.processRequest(NioImapHandler.java:123)
        at com.zimbra.cs.imap.NioImapHandler.messageReceived(NioImapHandler.java:63)
        at com.zimbra.cs.server.NioHandlerDispatcher.messageReceived(NioHandlerDispatcher.java:95)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:716)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
        at org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:427)
        at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:245)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
        at com.zimbra.cs.server.NioLoggingFilter.messageReceived(NioLoggingFilter.java:68)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:796)
        at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:75)
        at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63)
        at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTask(OrderedThreadPoolExecutor.java:780)
        at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTasks(OrderedThreadPoolExecutor.java:772)
        at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.run(OrderedThreadPoolExecutor.java:714)
        at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: org.terracotta.offheapstore.exceptions.OversizeMappingException: Storage Engine and Eviction Failed - Empty Map
Storage Engine : OffHeapBufferStorageEngine allocated=1022.0KB occupied=0B
Storage Area: OffHeapStorageArea
        511 2KB pages
Allocator: org.terracotta.offheapstore.storage.allocator.IntegerBestFitAllocator@221a419f
Page Source: UpfrontAllocatingPageSource
Chunk 1
Size             : 1MB
Free Allocator   : PowerOfTwoAllocator: Occupied 1022.3KB [Largest Available Area 1KB]
Victim Allocator : PowerOfTwoAllocator: Occupied 320B [Largest Available Area 512KB]
        at org.terracotta.offheapstore.AbstractOffHeapClockCache.storageEngineFailure(AbstractOffHeapClockCache.java:84)
        at org.terracotta.offheapstore.OffHeapHashMap.writeEntry(OffHeapHashMap.java:689)
        at org.terracotta.offheapstore.OffHeapHashMap.computeWithMetadata(OffHeapHashMap.java:1947)
        at org.terracotta.offheapstore.AbstractLockedOffHeapHashMap.computeWithMetadata(AbstractLockedOffHeapHashMap.java:582)
        at org.terracotta.offheapstore.concurrent.AbstractConcurrentOffHeapMap.computeWithMetadata(AbstractConcurrentOffHeapMap.java:743)
        at org.ehcache.impl.internal.store.offheap.EhcacheConcurrentOffHeapClockCache.compute(EhcacheConcurrentOffHeapClockCache.java:152)
        at org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry(AbstractOffHeapStore.java:1088)
        ... 47 more


Can anyone tell why this is?
I can't establish a connection between this error stack and something not working as expected. But even if the error is not harmful I would like to understand the cause and get rid of it.

Kind regards
Andreas

Re: StoreAccessException in mailbox.log

Posted: Fri Jun 28, 2019 7:29 am
by andrey.ivanov
Hi,

The message is harmless but you can reduce its frequency - check the thread viewtopic.php?t=62916


Regards

Re: StoreAccessException in mailbox.log

Posted: Fri Jun 28, 2019 7:45 am
by apiening
Hi Andrey,
thank you very much.

I did a

Code: Select all

zmprov ms `zmhostname` zimbraImapInactiveSessionEhcacheSize 104857600

as suggested in the the thread and will see if the error happens less frequently now.

Kind regards
Andreas