Skip to content
  • Magnus Blåudd's avatar
    8c4e34bd
    Bug#28949523 DYNAMICALLY ADAPT SCHEMA DIST DATA TO NUMBER OF NODES · 8c4e34bd
    Magnus Blåudd authored
    The schema distribution data maintained for keeping track of subscribers
    assumes that max number of data nodes will never exceed 256.
    This is both a limitation in terms of max number of supported data nodes
    as well as unnecessary memory usage when using less than 256 data nodes.
    
    Fix by dimensioning the subscriber bitmaps to match the number of
    data nodes in configuration. Store the allocated bitmaps in a list which
    allows direct lookup from data node id to subscriber bitmap.
    Remove the fixed size lookup table from data node id to
    subscriber bitmap.
    Change the number of subscribers in the bitmap to be dynamically
    configurable to allow later adjusting of subscriber size to the
    actual maximum subscriber number in the current configuration. Initially
    use the compile time constant MAX_NODES.
    Add ndb_bitmap_to_hex_string() for printing MY_BITMAP as string, the new
    implementation prints the whole bitmap and not only the first two words.
    Improve code encapsulation and function comments.
    
    Change-Id: I69b93add7cf2bbe875c32d14e53249a89182db71
    8c4e34bd
    Bug#28949523 DYNAMICALLY ADAPT SCHEMA DIST DATA TO NUMBER OF NODES
    Magnus Blåudd authored
    The schema distribution data maintained for keeping track of subscribers
    assumes that max number of data nodes will never exceed 256.
    This is both a limitation in terms of max number of supported data nodes
    as well as unnecessary memory usage when using less than 256 data nodes.
    
    Fix by dimensioning the subscriber bitmaps to match the number of
    data nodes in configuration. Store the allocated bitmaps in a list which
    allows direct lookup from data node id to subscriber bitmap.
    Remove the fixed size lookup table from data node id to
    subscriber bitmap.
    Change the number of subscribers in the bitmap to be dynamically
    configurable to allow later adjusting of subscriber size to the
    actual maximum subscriber number in the current configuration. Initially
    use the compile time constant MAX_NODES.
    Add ndb_bitmap_to_hex_string() for printing MY_BITMAP as string, the new
    implementation prints the whole bitmap and not only the first two words.
    Improve code encapsulation and function comments.
    
    Change-Id: I69b93add7cf2bbe875c32d14e53249a89182db71
Loading