You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Thomas Vandahl (JIRA)" <ji...@apache.org> on 2016/08/07 09:53:20 UTC

[jira] [Resolved] (JCS-156) BlockDiskCache is limited to 2GB.

     [ https://issues.apache.org/jira/browse/JCS-156?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thomas Vandahl resolved JCS-156.
--------------------------------
       Resolution: Incomplete
    Fix Version/s: jcs-2.0-beta-2

Thanks for the contributions. I think we can currently leave it at that.

> BlockDiskCache is limited to 2GB.
> ---------------------------------
>
>                 Key: JCS-156
>                 URL: https://issues.apache.org/jira/browse/JCS-156
>             Project: Commons JCS
>          Issue Type: Bug
>          Components: Composite Cache
>    Affects Versions: jcs-2.0-beta-1
>            Reporter: Alexander Malyshev
>            Assignee: Thomas Vandahl
>             Fix For: jcs-2.0-beta-2
>
>         Attachments: BlockDisk-calculateByteOffsetPatch.patch, jcs.patch
>
>
> There is a bug in BlockDiskCache which makes it limited to 2GB in size. If I try to write more, I'm getting the following exception:
> Exception in thread "CacheEventQueue.QProcessor-sliderCache" java.lang.IllegalArgumentException: Negative position
> 	at sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:754)
> 	at org.apache.commons.jcs.auxiliary.disk.block.BlockDisk.write(BlockDisk.java:216)
> 	at org.apache.commons.jcs.auxiliary.disk.block.BlockDiskCache.processUpdate(BlockDiskCache.java:394)
> 	at org.apache.commons.jcs.auxiliary.AbstractAuxiliaryCacheEventLogging.updateWithEventLogging(AbstractAuxiliaryCacheEventLogging.java:65)
> 	at org.apache.commons.jcs.auxiliary.disk.AbstractDiskCache.doUpdate(AbstractDiskCache.java:804)
> 	at org.apache.commons.jcs.auxiliary.disk.AbstractDiskCache$MyCacheListener.handlePut(AbstractDiskCache.java:662)
> 	at org.apache.commons.jcs.engine.AbstractCacheEventQueue$PutEvent.doRun(AbstractCacheEventQueue.java:350)
> 	at org.apache.commons.jcs.engine.AbstractCacheEventQueue$AbstractCacheEvent.run(AbstractCacheEventQueue.java:269)
> 	at org.apache.commons.jcs.engine.CacheEventQueue$QProcessor.run(CacheEventQueue.java:304)
> The reason is that method calculateByteOffsetForBlock in BlockDisk class returns int instead of long.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)