[ 
https://issues.apache.org/jira/browse/CASSANDRA-8897?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14513395#comment-14513395
 ] 

Stefania commented on CASSANDRA-8897:
-------------------------------------

dtests are clean now, same duration and failed tests as on trunk, see details 
below.

The dtest failures that we introduced were caused by buffers released by non 
owning threads. It seems this is quite a common behavior, for example for jobs 
submitted to the compaction executor that use merged iterators (which use the 
iterators on construction): the RandomAccessReader allocates the buffer in the 
requesting thread and releases it in the executor thread when the job completes.

So our assumption of having the same thread allocate and release a buffer was 
too simplistic. I lowered the ERROR to INFO, since we can release the memory 
safely after all, even though we cannot re-use the buffer immediately. Do you 
think this is enough or we should do more?

I also fixed a possible memory leak when grabbing a new chunk in the local pool.

In order to compare the dtests with trunk I had to rebase again, I can also 
squash the commits if you prefer.

Dtest details:

http://cassci.datastax.com/view/Dev/view/Stefania/job/stef1927-8897-dtest/lastCompletedBuild/testReport/

{code}
 bootstrap_test.TestBootstrap.simple_bootstrap_test 1 min 54 sec    1  => 
failed on trunk as well (build 37)
 upgrade_supercolumns_test.TestSCUpgrade.upgrade_with_counters_test 3 min 55 
sec    1 => failed on trunk as well (build 32)
 secondary_indexes_test.TestSecondaryIndexesOnCollections.test_map_indexes  1 
min 54 sec    3 => (ran OK on my machine, problem is with the sleep in the test)
 upgrade_supercolumns_test.TestSCUpgrade.upgrade_with_index_creation_test  => 
failed on trunk as well (build 45)
{code}

> Remove FileCacheService, instead pooling the buffers
> ----------------------------------------------------
>
>                 Key: CASSANDRA-8897
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8897
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Benedict
>            Assignee: Stefania
>             Fix For: 3.0
>
>
> After CASSANDRA-8893, a RAR will be a very lightweight object and will not 
> need caching, so we can eliminate this cache entirely. Instead we should have 
> a pool of buffers that are page-aligned.



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

Reply via email to