roleAssignment with NO_MERGE_NO_HISTORY

Hello,
I am setting the NO_MERGE_NO_HISTORY publication strategy on some of my publications that does not need reactivity. I understood that it can improve the speed of my app.

Is this correct ? Does it means that if the user refresh the page he will get new documents added to the collection ?

Then second question,
I use this bit of code :

Meteor.publish(null, function() {
  this.unblock();
  if (this.userId) {
    return Meteor.roleAssignment.find({
      scope: null,
      'user._id': this.userId,
    });
  }
  this.ready();
});

for the roles.

I would like to also apply

Meteor.server.setPublicationStrategy('myPublicationName', DDPServer.publicationStrategies.NO_MERGE_NO_HISTORY);

to the publication of roles but how to do this as the name is null.

I think this is ok to do this as I do not need the roles-assignement to be reactive. The user can simply refresh the page and we will get the new roles. Right ?

Thanks a lot

Another option is to use a method if the purpose is to improve the performance of your app

The docs for setPublicationStrategy/getPublicationStrategy in Meteor 3 are wrong. I’ve opened an issue for it.

The argument to setPublicationStrategy is actually the collection name. It effects all publications for that collection, including null named publications.

I think this is ok to do this as I do not need the roles-assignement to be reactive. The user can simply refresh the page and we will get the new roles. Right ?

It will still be partly reactive. Removes won’t be sent, but I think changes and new documents are still sent.