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

[UDF] Execute function result in evaluator error in mixed mode

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • 7.1.0
    • 7.1.0
    • js-evaluator
    • 7.0.4-7200
      7.1.0-2021
    • Untriaged
    • 1
    • Unknown

    Description

      To repro:

      • setup 3 node cluster with 7.0.4-7200
      • create UDF f1
      • online upgrade node3 to 7.1.0-2021
      • execute function f1 from node1 and node3
      • create udf f2 with n1ql statement on node3
      • execute function f1 from node1 and node3

      Some execute will succeed but some will fail

      For example from node3:

      cbq> execute function add2(10,20);
      {
          "requestID": "aced433d-8bd5-4909-90ad-9565f21e8a5f",
          "signature": null,
          "results": [
          30
          ],
          "status": "success",
          "metrics": {
              "elapsedTime": "20.211073ms",
              "executionTime": "20.065845ms",
              "resultCount": 1,
              "resultSize": 2,
              "serviceLoad": 6
          }
      }
      cbq> execute function add2(10,20);
      {
          "requestID": "56bf4b2d-a469-436a-b9a3-3c7aaf7a0a98",
          "signature": null,
          "results": [
          ],
          "errors": [
              {
                  "code": 10109,
                  "msg": "Error executing function add2 (math2:add2): Evaluator error Library or function missing : No library named math2 in worker - cause: Evaluator error Library or function missing : No library named math2 in worker"
              }
          ],
          "status": "errors",
          "metrics": {
              "elapsedTime": "4.451198ms",
              "executionTime": "4.264416ms",
              "resultCount": 0,
              "resultSize": 0,
              "serviceLoad": 6,
              "errorCount": 1
          }
      }
       

      same for the udf with n1ql statement:

      cbq> execute function lyon_airport();
      {
          "requestID": "1b80158e-0d12-4e1a-9e43-caa3bbb76373",
          "signature": null,
          "results": [
          ],
          "errors": [
              {
                  "code": 10109,
                  "msg": "Error executing function lyon_airport (n1ql:lyon_airport): Evaluator error Library or function missing : No library named n1ql in worker - cause: Evaluator error Library or function missing : No library named n1ql in worker"
              }
          ],
          "status": "errors",
          "metrics": {
              "elapsedTime": "20.645908ms",
              "executionTime": "20.507098ms",
              "resultCount": 0,
              "resultSize": 0,
              "serviceLoad": 6,
              "errorCount": 1
          }
      }
      cbq> execute function lyon_airport();
      {
          "requestID": "9ffe7153-60e2-4beb-bc9b-1909d6683b44",
          "signature": null,
          "results": [
          [
              {
                  "airportname": "Saint Exupery"
              },
              {
                  "airportname": "Bron"
              },
              {
                  "airportname": "Lyon Part-Dieu Railway"
              }
          ]
          ],
          "status": "success",
          "metrics": {
              "elapsedTime": "15.489837ms",
              "executionTime": "15.253475ms",
              "resultCount": 1,
              "resultSize": 198,
              "serviceLoad": 6
          }
      }
       

      on node1, you see same behavior.

      Attachments

        Activity

          People

            pierre.regazzoni Pierre Regazzoni
            pierre.regazzoni Pierre Regazzoni
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              PagerDuty