Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-52364

[BP MB-51743 7.1.1] - Eventing function should be able to listen to multiple collections in a bucket at the same time



    • Improvement
    • Resolution: Fixed
    • Critical
    • 7.1.2
    • 7.0.4, 7.1.0
    • eventing
    • 1


      In deployments with 100s of collections per bucket and 1 eventing function per collection, eventing ends up spawning at least 1 process per function and 100s of DCP connections with KV nodes. This can put resources on KV and Eventing nodes under undue stress.

      Eventing in Neo supports full RBAC. So it should be possible for a single eventing function to listen to multiple collections in the same bkt at the same time provided user has necessary DCP data read permissions. One possible way to do this is as below

      Option-1 (easiest):
      Listen to Keyspace
      1. bkt.scope.collection <----- as of Neo, function can listen to a single collection
      2. bkt.scope.{*} <---- proposed option to listen to all collections in scope 'bkt.scope'
      3. bkt.*.* <---- proposed option to listen to all collections in the bucket 'bkt'

      Option-2 (a bit complicated):
      1. Allow selection of multiple collections in the drop down 'Listen to Keyspace'. We may have to limit to a single bucket though and listening to collections across bkts can be problematic and non-intuitive.

      Cc Jon StrabalaRitam SharmaChanabasappa Ghali


        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.



              sujay.gad Sujay Gad
              jeelan.poola Jeelan Poola
              0 Vote for this issue
              3 Start watching this issue



                Gerrit Reviews

                  There are no open Gerrit changes