cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Branimir Lambov (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-12018) CDC follow-ups
Date Fri, 08 Jul 2016 11:12:11 GMT


Branimir Lambov commented on CASSANDRA-12018:

bq. Done.

I would remove the secondary path here -- this could lead to different results between the
platforms as one will descend into subdirectories and the other won't. My problem was with
doing both {{listFiles}} and {{walkFileTree}}, which just doing the walk fixes in the better
way (less object churn).
You can also remove the [todo|].

bq. Cleaned up.

The {{size}} and {{unflushedCDCSize}} members do not need to be atomic, but they should be
volatile for writes to be made visible to threads other than the one writing.
{{tempSize}} isn't informative enough. Maybe {{sizeInProgress}}, {{incompleteSize}} or something

bq. Removed &

We still want the AND of global and section-specific flags, just not to carry it over from
one section to the other. I.e. {{statusTracker.tolerateErrorsInSection = tolerateTruncation
& syncSegment.toleratesErrorsInSection}} (or make sure the segment reader does it when
setting {{tolerateErrorsInSection}}). 

> CDC follow-ups
> --------------
>                 Key: CASSANDRA-12018
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Joshua McKenzie
>            Assignee: Joshua McKenzie
>            Priority: Minor
> h6. Platform independent implementation of DirectorySizeCalculator
> On linux, simplify to {{;}}
> h6. Refactor DirectorySizeCalculator
> bq. I don't get the DirectorySizeCalculator. Why the alive and visited sets, the listFiles
step? Either list the files and just loop through them, or do the walkFileTree operation –
you are now doing the same work twice. Use a plain long instead of the atomic as the class
is still thread-unsafe.
> h6. TolerateErrorsInSection should not depend on previous SyncSegment status in CommitLogReader
> bq. tolerateErrorsInSection &=: I don't think it was intended for the value to depend
on previous iterations.
> h6. Refactor interface of SImpleCachedBufferPool
> bq. SimpleCachedBufferPool should provide getThreadLocalReusableBuffer(int size) which
should automatically reallocate if the available size is less, and not expose a setter at
> h6. Change CDC exception to WriteFailureException instead of WriteTimeoutException
> h6. Remove unused CommitLogTest.testRecovery(byte[] logData)
> h6. NoSpamLogger a message when at CDC capacity

This message was sent by Atlassian JIRA

View raw message