samueldlightfoot opened a new pull request, #4606:
URL: https://github.com/apache/cassandra/pull/4606

   Summary                                                                      
                                                                                
                                                     
                                                                                
                                                                                
                                                       Wire 
compaction_read_disk_access_mode through cursor compaction to enable direct IO 
reads, matching the existing support in the iterator-based compaction path.     
                                              
                                                                                
                                                                                
                                                       Changes:                 
                                                                                
                                                                                
                         
                                                                                
                                                                                
                                                       
   - Thread DiskAccessMode from 
DatabaseDescriptor.getCompactionReadDiskAccessMode() through 
CursorCompactor.createCursors() → StatefulCursor → SSTableCursorReader → 
SSTableReader.openDataReader(DiskAccessMode)   
     - Consolidate SSTableReader's five openDataReader/openDataReaderForScan 
variants into a single openDataReaderInternal with canReuseDfile guard — reuses 
the existing dfile when the requested mode matches or     
     direct IO is unsupported, otherwise creates a new FileHandle with 
OnReaderClose.CLOSE_FILE ownership                                              
                                                                
     - Extract CursorCompactor.createCursors() with proper cleanup on partial 
construction failure via Throwables.closeNonNullAndAddSuppressed                
                                                         
     - Fix DirectThreadLocalReadAheadBuffer.cleanBuffer() to clean the backing 
buffer (attachment) rather than the aligned slice, preventing a native memory 
leak on close                                             
                                                                                
                                                          
   patch by Sam Lightfoot reviewed by <Reviewers> for CASSANDRA-21147
   
   Co-authored-by: Name1 <email1>
   Co-authored-by: Name2 <email2>
   
   ```
   
   The [Cassandra Jira](https://issues.apache.org/jira/browse/CASSANDRA-21147)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to