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

event backlog stat on UI could be misleading when a function is deployed with from-now feed boundary

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Major
    • 7.0.0
    • 6.5.0
    • eventing
    • Untriaged
    • Unknown

    Description

      Summary

      On a single node (not a cluster running Debias 8 e.g. Jessie)

      Following the sample at https://eventing-workshop.s3.amazonaws.com/Instructions.pdf (be aware that the bucket should be named ‘meta’ not ‘metadata’ if you import verifier.json)

      Issue #1

      If an Eventing function is initially deployed "Everything" and undeployed, subsequent deployments "From now" will deploy and run as if "Everything" was selected.  This will result in data being generated.

      This seems like once you deploy with "Everything" the setting just seems to "stick"

      Refer to my attachment "Issue with Eventing once deployed with Everything is selected it is sticky and deploying with From now has no effect.pdf"

      Issue #2

      I am concerned about wasted CPU an IOPS here

      If an Eventing function is initially deployed "From Now" and undeployed, subsequent deployments "From now" will work correctly (no new items in "review" seem to be generated) but the CPU load seem to indicates that everything is processing (or at least being checked) all over again.

      Since no new mutations are occurring in my test setup I believe there should be no processing load, shouldn't a check-point or something prevent this extra processing on a redeploy.  Perhaps this is the expected behavior I'm not sure. 

      However if you have a deployed Eventing function and the entire system is in a quiescent stat (no new data) stoping and starting the single node server also results in a CPU burst where eventing seems to reprocess everything as evidenced by the Eventing backlog under the deployed function, I don't think this in this case this should ever be the expected behavior.

      To rephrase, if we stop / start Couchbase (I use a single node) once Eventing is entirely caught up and the system is quiescent (no new data) upon restart it should never kick off a reprocessing of all data vis executing the Eventing function(s)

      You can see this on page 5 of my attachment "Issue with Eventing once deployed with Everything is selected it is sticky and deploying with From now has no effect.pdf"

      Additional Background

      Refer to attachment for CPU trace snap shots across a multitude of scenarios to reproduce and then unwind the issue.

      Other

      Upon searching the forums this issue seems to have been reported in mid February via https://forums.couchbase.com/t/eventing-onupdate-processes-all-data-in-the-bucket/20088 however the reporting individual did not share further details.  

      Comment

      Indeed if we just had some simple statists like [Eventing] backlog found under statistics (but in the Eventing view right were we deployed the function) IMHO not only this bug would be blatantly obvious, but initial users of Eventing would get a better user experience with positive feed back what is happening upon a deploying a function.

      If needed I can reproduce and provide more detail and/or insert log statements in the function "verify" and re-run.

       

       

      Attachments

        Issue Links

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

          Activity

            People

              satya.nand Satya Nand (Inactive)
              jon.strabala Jon Strabala
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty