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

Eventing Function is not processing all mutations during upgrade to 7.6.2

    XMLWordPrintable

Details

    • Bug
    • Resolution: Not a Bug
    • Critical
    • 7.6.2
    • 7.6.2
    • eventing
    •  Enterprise Edition 7.6.2 build 3695

    Description

       

      ./testrunner.py -i ${win10_bucket_ops_ini} -t eventing.eventing_upgrade.EventingUpgrade.test_online_upgrade_with_failover_rebalance_with_eventing_base64_xattrs,nodes_init=5,dataset=default,groups=simple,skip_cleanup=True,initial_version=7.6.0-2176,doc-per-day=10,upgrade_test=True,upgrade_version=7.6.2-3695,global_function_scope=True
       

       

      I had deployed a cluster of 10 servers - 5 servers of version 7.6.0-2176 and the other 5 of version 7.6.2-3695. Each 5 had the services - (kv,kv,eventing,index,query). To eventing functions were created , both listening to src_bucket. 

      1. Bucket bindings: dst_bucket:

      function OnUpdate(doc, meta){
          var meta = {"id": meta.id};
          couchbase.insert(dst_bucket, meta, doc);
          var failed=false
          try{
          couchbase.mutateIn(dst_bucket, meta, [couchbase.MutateInSpec.upsert("path",1 )]);
          }
          catch (e) {
              failed=true
          }
          if (!failed){
              dst_bucket[meta.id+"11111"]="success"
          }
      }
      function OnDelete(doc,meta,xattrs){} 

      1. Bucket bindings: dst_bucket1

      function OnUpdate(doc, meta) {
          log("Doc created/updated", meta.id);
          try{
              var result1= couchbase.insert(dst_bucket,meta,doc);
              log(result1);
          }catch(e){
              log("error:",e);
          }
      }function OnDelete(meta, options) {
          log("Doc deleted/expired", meta.id);
          var doc={"id":meta.id}
          var result = couchbase.delete(dst_bucket,doc);
          log(result);
      } 

      After upgrade the older server nodes are removed. 

      EXPECTED RESULT: 

      src_bucket contains : 16,716 documents

      dst_bucket should contain 16,716*2 and dst_bucket1 should contain 16,716 documents

      PFA: image containing the actual results. The dst_bucket1 contains more documents than src_bucket which is anomalous.

      Stacktrace['Traceback (most recent call last):\n  File "pytests/eventing/eventing_upgrade.py", line 876, in test_online_upgrade_with_failover_rebalance_with_eventing_base64_xattrs\n    self.verify_doc_count_collections("dst_bucket._default._default", self.docs_per_day * 2016 * 2)\n  File "pytests/eventing/eventing_base.py", line 1041, in verify_doc_count_collections\n    actual_count, expected_count, total_dcp_backlog, timers_in_past, lcb))\nException: missing data in destination bucket. Current : 19481 Expected : 40320  dcp_backlog : 0  TIMERS_IN_PAST : 0 lcb_exceptions : {\'172.23.106.78\': {}}\n'] 

       

      Attachments

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

        Activity

          People

            barkha.goyal Barkha Goyal
            barkha.goyal Barkha Goyal
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty