Uploaded image for project: 'JGroups'
  1. JGroups
  2. JGRP-1951

Flexible buffers for scatter/gather

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Major Major
    • 3.6.7
    • None
    • None
    • 0
    • 0% 0%

      Currently, Buffers and WriteBuffers are inflexible in that they always expect a length buffer followed by data (Buffers), or a sequence of len/data pairs (WriteBuffers).
      This is bad if we for example want to read a sequence like the one below (for connection establishment in TCP):

      | cookie | version | len | peer-address |
         (4)         (2)      (2)     (variable)
      

      Goals:

      • Have only 1 buffer, for reading and writing
      • Allow to define the sequence by adding buffers dynamically, e.g. in the above case, we'd add a 4 and a 2-length buffer and read data into them. If the cookie and version don't match, throw an exception, else dynamically add a length buffer (possibly doing a clear() which removes the first 2 buffers), read data into it, then add a new buffer sized to the read length and finally read data into it.

            rhn-engineering-bban Bela Ban
            rhn-engineering-bban Bela Ban
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: