I confirm that
setItemsRange does not apply to keys managed by a single item in COMMAND mode:
it only applies to first-level items which belong to the same "group" (i.e. which are subscribed to as a single table), hence, typically, to items in MERGE mode.
As in your option 3, we also suggest using a two-level subscription policy for highly updated COMMAND mode items, which is what the
MultiDynaMetapushTable implements.
However, even the
MultiDynaMetapushTable, when paging is configured through
setMaxDynaRows, does not implement on-demand subscriptions for the second level items based on whether or not the key is currently on display.
Hence, the paged second-level subscriptions should be managed by application code, in a way that could be similar to our
Grid Demo, but more complicated, if you can expect insertions and deletions of items in the middle of the page.
Alternatively, in order to put an overall limit to the update flow, you could try
setting a bandwidth limit on the session.