Project

General

Profile

Feature #9953

Updated by Sage Weil over 9 years ago

Haomai and Dong proposed a vastly improved Transaction encoding during CDS.    Video is here: 

 https://www.youtube.com/watch?v=8uYRDYdMywA&feature=youtu.be 

 Highlights: 
  - fixed-size struct for each op 
  - everything else is offset into a single bufferlist where variable-length bits accumulate 
  - very little data copying during encode/decode. 

 Comments from session: 

 http://pad.ceph.com/p/hammer-osd_transaction_encoding 

  - use __le64, __le32 types 
  - pointers directly into the bufferlist so there is no copy needed 
  - need bufferlist method to ensure the next X bytes are contiguously allocated; reallocate (probably just) that section if necessary (#9954) 

Back