Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-9067

register-interest done during rolling upgrade can take longer than needed

    XMLWordPrintableJSON

Details

    Description

      If a client does a register-interest to a server that is a newer geode version than its peer servers (which happens during a rolling upgrade), and the InterestResultPolicy is KEYS_VALUES (the default), on a partitioned region, then the way the server fetches values that are on the older peer servers is slower than it needs to be. Instead of sending that server a single FetchBulkEntries message, it does an individual get for each key. This individual get can also go to a primary of secondary and for correctness register-interest needs to do all its reads from the primary.

      The code has been doing this ever since the first release of geode. Once all the members have been restarted then register-interest does its reads optimally. Since a register-interest that is in progress prevents its subscription queue from draining, this slow register-interest could cause memory issues or performance issues on the cluster. But it really depends on how big the region is, how big the cluster is, and the rate at which operations that go into the subscription queue are being done.

      Attachments

        Issue Links

          Activity

            People

              mhansonp Mark Hanson
              dschneider Darrel Schneider
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: