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

Joshua McKenzie updated CASSANDRA-12018:
----------------------------------------
    Description: 
h6. Platform independent implementation of DirectorySizeCalculator
On linux, simplify to 
{{Arrays.stream(path.listFiles()).mapToLong(File::length).sum();}}

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 all.

h6. Change CDC exception to WriteFailureException instead of 
WriteTimeoutException

h6. Remove unused CommitLogTest.testRecovery(byte[] logData)

h6. NoSpamLogger a message when at CDC capacity

  was:
h6. Platform independent implementation of DirectorySizeCalculator
On linux, simplify to 
{{Arrays.stream(path.listFiles()).mapToLong(File::length).sum();}}

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 all.

h6. Change CDC exception to WriteFailureException instead of 
WriteTimeoutException

h6. Remove unused CommitLogTest.testRecovery(byte[] logData)


> CDC follow-ups
> --------------
>
>                 Key: CASSANDRA-12018
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12018
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Joshua McKenzie
>            Assignee: Joshua McKenzie
>            Priority: Minor
>
> h6. Platform independent implementation of DirectorySizeCalculator
> On linux, simplify to 
> {{Arrays.stream(path.listFiles()).mapToLong(File::length).sum();}}
> 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 all.
> 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
(v6.3.4#6332)

Reply via email to