Project

General

Profile

Actions

Feature #9953

closed

osd: efficient ObjectStore::Transaction encoding

Added by Sage Weil over 9 years ago. Updated over 9 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
% Done:

0%

Source:
other
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

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)


Files


Related issues 1 (0 open1 closed)

Blocked by Ceph - Feature #9954: buffer: method to ensure an extent is contiguousResolved

Actions
Actions #1

Updated by Sage Weil over 9 years ago

  • Description updated (diff)
  • Assignee set to Haomai Wang
Actions #2

Updated by Sage Weil over 9 years ago

  • Target version deleted (0.90)
Actions #5

Updated by Sage Weil over 9 years ago

  • Target version set to v.actually91
Actions #6

Updated by Sage Weil over 9 years ago

  • Status changed from New to In Progress
Actions #7

Updated by Sage Weil over 9 years ago

  • Status changed from In Progress to 7
Actions #8

Updated by Sage Weil over 9 years ago

  • Target version changed from v.actually91 to v0.92
Actions #9

Updated by Sage Weil over 9 years ago

  • Status changed from 7 to Resolved
Actions

Also available in: Atom PDF