You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stefania (JIRA)" <ji...@apache.org> on 2015/12/07 08:29:11 UTC
[jira] [Updated] (CASSANDRA-8952) Remove transient RandomAccessFile
usage
[ https://issues.apache.org/jira/browse/CASSANDRA-8952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefania updated CASSANDRA-8952:
--------------------------------
Component/s: Local Write-Read Paths
> Remove transient RandomAccessFile usage
> ---------------------------------------
>
> Key: CASSANDRA-8952
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8952
> Project: Cassandra
> Issue Type: Improvement
> Components: Local Write-Read Paths
> Reporter: Joshua McKenzie
> Assignee: Stefania
> Priority: Minor
> Labels: Windows
> Fix For: 2.2.0 beta 1
>
>
> There are a few places within the code base where we use a RandomAccessFile transiently to either grab fd's or channels for other operations. This is prone to access violations on Windows (see CASSANDRA-4050 and CASSANDRA-8709) - while these usages don't appear to be causing issues at this time there's no reason to keep them. The less RandomAccessFile usage in the code-base the more stable we'll be on Windows.
> [SSTableReader.dropPageCache|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/io/sstable/format/SSTableReader.java#L2021]
> * Used to getFD, have FileChannel version
> [FileUtils.truncate|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/io/util/FileUtils.java#L188]
> * Used to get file channel for channel truncate call. Only use is in index file close so channel truncation down-only is acceptable.
> [MMappedSegmentedFile.createSegments|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/io/util/MmappedSegmentedFile.java#L196]
> * Used to get file channel for mapping.
> Keeping these in a single ticket as all three should be fairly trivial refactors.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)