title: Got duplicated data when subscribe multiple times
body: <p>I am using MongoDB aggregation in meteor. I got duplicated data when subscribe multiple times.</p>
  
  <p>(The data in database are static, which means they are same all the time.)</p>
  
  <p>// Server side</p>
  
  <pre><code>Meteor.publish('totalNumber', function () {
    let pipeline = [
      { $unwind: '$product' },
      { $group: {
        _id: {
          code: '$product.code',
          hour: { $hour: '$timestamp' }
        },
        total: { $sum: '$product.count' },
      }}
    ];
  
    Products.aggregate(
      pipeline,
      Meteor.bindEnvironment((err, result) =&gt; {
          console.log('result', result);  // at here every time subscribe, no duplicated data
          _.each(result, r =&gt; {
            this.added('totalNumber',
              // I use Random.id() here, because "Meteor does not currently support objects other than ObjectID as ids"
              Random.id(), {
                code: r._id.code,
                hour: r._id.hour,
                total: r.total
            });
          });
        }
      )
    );
  
    this.ready();
  });
  </code></pre>
  
  <p>// Client side</p>
  
  <pre><code>this.subscribe('totalNumber', () =&gt; {
    // Correct result: [Object, Object] for example
    console.log(Products.find().fetch());
  }, true);
  
  this.subscribe('totalNumber', () =&gt; {
    // Wrong result: [Object, Object, Object, Object]
    console.log(Products.find().fetch());
  }, true);
  
  this.subscribe('totalNumber', () =&gt; {
    // Wrong result: [Object, Object, Object, Object, Object, Object]
    console.log(Products.find().fetch());
  }, true);
  </code></pre>
  
  <p>So right now basically, the new results always include last time subscribe data.</p>
  
  <p>How can I solve this problem? Thanks</p>