[teiid-issues] [JBoss JIRA] (TEIID-3443) wrong estimation of BufferFrontedFileStoreCache.maxMemoryBlocks

Steven Hawkins (JIRA) issues at jboss.org
Mon Jun 22 11:23:05 EDT 2015


     [ https://issues.jboss.org/browse/TEIID-3443?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins closed TEIID-3443.
---------------------------------


> wrong estimation of BufferFrontedFileStoreCache.maxMemoryBlocks
> ---------------------------------------------------------------
>
>                 Key: TEIID-3443
>                 URL: https://issues.jboss.org/browse/TEIID-3443
>             Project: Teiid
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: 8.4, 8.10
>         Environment: JDV 6.0.x, 6.1.0
>            Reporter: Hisanobu Okuda
>            Assignee: Steven Hawkins
>             Fix For: 8.7.1.6_2, 8.11
>
>
> BufferFrontedFileStoreCache.maxMemoryBlocks is under-estimated. For example, when max-storage-object-size=8000000, maxMemoryBlocks
> is 488 at the line #575 in org.teiid.common.buffer.impl.BufferFrontedFileStoreCache.initialize() (after that, it is decrimented some times, but it does not matter).
> {code}
> main[1] run
> > 
> Breakpoint hit: "thread=MSC service thread 1-3", org.teiid.common.buffer.impl.BufferFrontedFileStoreCache.initialize(), line=573 bci=163
> 573    		maxMemoryBlocks = Math.min(maxMemoryBlocks, maxStorageObjectSize>>LOG_BLOCK_SIZE + ((maxStorageObjectSize&BufferFrontedFileStoreCache.BLOCK_MASK)>0?1:0));
> MSC service thread 1-3[1] next
> > 
> Step completed: "thread=MSC service thread 1-3", org.teiid.common.buffer.impl.BufferFrontedFileStoreCache.initialize(), line=575 bci=198
> 575    		cleaningThreshold = Math.min(maxMemoryBlocks<<4, blocks>>1);
> MSC service thread 1-3[1] dump this
>  this = {
>     ...snip...
>     maxStorageObjectSize: 8000000
>     ...snip...
>     maxMemoryBlocks: 488
> {code}
> An actual cache object size for maxMemoryBlocks: 488 is roughly:-
> {code}
> 8192 * 488 = 3997696
> {code}
> It is less than half of maxStorageObjectSize. It sometimes causes TEIID30001.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


More information about the teiid-issues mailing list