Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fast denc encoding #11027

Merged
merged 31 commits into from Oct 18, 2016
Merged

fast denc encoding #11027

merged 31 commits into from Oct 18, 2016

Commits on Oct 16, 2016

  1. declare encode/decode for various types that are missing it

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    c974e8d View commit details
    Browse the repository at this point in the history
  2. ceph-dencoder: PGMap[::Incremental] requires features to encode

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    9d6d839 View commit details
    Browse the repository at this point in the history
  3. ceph-dencoder: AuthMonitor::Incremental is featured

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    0b7f248 View commit details
    Browse the repository at this point in the history
  4. ceph-dencoder: use encode/decode functions instead of class methods

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    1917d85 View commit details
    Browse the repository at this point in the history
  5. buffer: rename iterator copy() to copy_deep()

    Current callers expect a deep copy; be explicit about it.
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    6d7f748 View commit details
    Browse the repository at this point in the history
  6. buffer: add iterator copy_shallow() to ptr

    If the length resides within the bufferlist's current ptr, return a ptr
    to the same buffer.
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    14cad56 View commit details
    Browse the repository at this point in the history
  7. include/small_encoding: rewrite small_{encode,decode}_signed_varint i…

    …n terms of varint
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    7ff7424 View commit details
    Browse the repository at this point in the history
  8. include/small_encoding: rewrite lowz in terms of generic varint

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    43d0554 View commit details
    Browse the repository at this point in the history
  9. buffer: implement ptr::end_c_str()

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    3bf5317 View commit details
    Browse the repository at this point in the history
  10. buffer: fix whitespace

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    1baeb61 View commit details
    Browse the repository at this point in the history
  11. buffer: implement bufferlist::contiguous_appender

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    c388692 View commit details
    Browse the repository at this point in the history
  12. buffer: implement bufferptr::iterator

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    059065c View commit details
    Browse the repository at this point in the history
  13. include/denc: new-style encoding framework

    #include it from encoding.h so that we can make old STL container helpers
    conditional on a new-style helper not being available.
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    18d754f View commit details
    Browse the repository at this point in the history
  14. include/denc: _nohead variants for containers

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    dec0f05 View commit details
    Browse the repository at this point in the history
  15. include/object: conditional denc_traits for snapid_t

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    c9c5235 View commit details
    Browse the repository at this point in the history
  16. include/fs_types: conditional denc_traits for inodeno_t

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    de05b38 View commit details
    Browse the repository at this point in the history
  17. include/interval_set: define denc_traits for interval_set<T>

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    9b25018 View commit details
    Browse the repository at this point in the history
  18. msg/msg_types: denc_traits for entity_name_t

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    09e14f9 View commit details
    Browse the repository at this point in the history
  19. osd: denc_traits for osd_reqid_t

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    aa4ab12 View commit details
    Browse the repository at this point in the history
  20. os/bluestore: convert internal types to denc

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    058caea View commit details
    Browse the repository at this point in the history
  21. unittest_bluefs: use append(const char*, size_t)

    The bufferlist one is for internal use only.
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    8910a3b View commit details
    Browse the repository at this point in the history
  22. buffer: add page_aligned_appender

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    cf0ca97 View commit details
    Browse the repository at this point in the history
  23. os/bluestore/BlueFS: write into page-aligned buffers from rocksdb

    The BlueRocksEnv uses the append(const char *, size_t) appender.  Ensure
    that this data is copied into a page-aligned buffer, and that we "pad" the
    write out with the remainder of the page.
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    47c6069 View commit details
    Browse the repository at this point in the history
  24. buffer: contiguous_appender::get_logical_offset

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    01e629e View commit details
    Browse the repository at this point in the history
  25. os/bluestore: log onode component sizes

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    5ca65f5 View commit details
    Browse the repository at this point in the history
  26. buffer: add a 'deep' append mode

    Do the copy up-front.  This is useful if we know our target buffer must
    be a contiguous buffer (e.g., because it will be passed to a kv store).
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    f047d57 View commit details
    Browse the repository at this point in the history
  27. os/bluestore: do deep encode of onode

    Avoid an inevitable rebuild() since we have to pass this to rocksdb as a
    single memory buffer anyway.
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    269a5bb View commit details
    Browse the repository at this point in the history
  28. ceph-dencoder: add hexdump command

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    3d5c199 View commit details
    Browse the repository at this point in the history
  29. ceph-dencoder: don't dump usage on every error

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    dc7c0a7 View commit details
    Browse the repository at this point in the history
  30. buffer: fix * zero placement

    Back in 46522cf we broke the newline
    placement for the * lines.
    
    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    b00b9d0 View commit details
    Browse the repository at this point in the history
  31. buffer: make iterator copy to ptr handle len==0

    Signed-off-by: Sage Weil <sage@redhat.com>
    liewegas committed Oct 16, 2016
    Copy the full SHA
    e7155b3 View commit details
    Browse the repository at this point in the history