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

Different behavior for incompatible type comparison between SQL++ and N1QL.

    XMLWordPrintable

Details

    • Untriaged
    • No
    • CX Sprint 112, CX Sprint 113, CX Sprint 114, CX Sprint 115

    Description

      Different results between SQL++ and N1QL has been observed and analytics result is looking better wrt incompatible type comparisons.

      In N1QL where the comparison hits incompatible type, it seems it is evaluated it to True while in analytics it is evaluated it to False.

      Query: SELECT age FROM default where age > 1;

      Analytics Output:

      [
        {
          "age": 70
        },
      {
          "age": 33
        },
        {
          "age": 12345.12345
        }
      ]
      

      N1QL Output:

      [
        {
          "age": 70
        },
      {
          "age": 33
        },
        {
          "age": [
            1,
            2
          ]
        },
        {
          "age": {
            "key": "value"
          }
        },
        {
          "age": 12345.12345
        }
      ]
      

      Attachments

        Issue Links

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

          Activity

            ritesh.agarwal Ritesh Agarwal created issue -
            ritesh.agarwal Ritesh Agarwal made changes -
            Field Original Value New Value
            Attachment data.json [ 50248 ]
            ritesh.agarwal Ritesh Agarwal made changes -
            Attachment backup-MB-28701.zip [ 50249 ]
            ritesh.agarwal Ritesh Agarwal made changes -
            Description Different results between SQL++ and N1QL has been observed and analytics result is looking better wrt incompatible type comparisons.

            In N1QL where the comparison hits incompatible type, it seems it is evaluated it to True while in analytics it is evaluated it to False.

            Query: SELECT age FROM default where age > 1;

            Analytics Output:
            {code}
            [
              {
                "age": 70
              },
            {
                "age": 33
              },
              {
                "age": 12345.12345
              }
            ]

            N1QL Output:
            [
              {
                "age": 70
              },
            {
                "age": 33
              },
              {
                "age": [
                  1,
                  2
                ]
              },
              {
                "age": {
                  "key": "value"
                }
              },
              {
                "age": 12345.12345
              }
            ]
            Different results between SQL++ and N1QL has been observed and analytics result is looking better wrt incompatible type comparisons.

            In N1QL where the comparison hits incompatible type, it seems it is evaluated it to True while in analytics it is evaluated it to False.

            Query: SELECT age FROM default where age > 1;

            Analytics Output:
            {code}
            [
              {
                "age": 70
              },
            {
                "age": 33
              },
              {
                "age": 12345.12345
              }
            ]
            {code}
            N1QL Output:
            {code}
            [
              {
                "age": 70
              },
            {
                "age": 33
              },
              {
                "age": [
                  1,
                  2
                ]
              },
              {
                "age": {
                  "key": "value"
                }
              },
              {
                "age": 12345.12345
              }
            ]
            {code}

            The Analytics result is the specified result for the converged query language. It is also the expected result for Vulcan.
            Deferring to Alice in case further discussion is needed.

            till Till Westmann added a comment - The Analytics result is the specified result for the converged query language. It is also the expected result for Vulcan. Deferring to Alice in case further discussion is needed.
            till Till Westmann made changes -
            Fix Version/s Alice [ 15048 ]
            Fix Version/s vulcan [ 14610 ]
            mike.carey Mike Carey added a comment -

            Technical nit:  In Analytics the comparison evaluates to NULL (not to TRUE) and then the WHERE predicate filters such cases (because only the TRUEs survive).

            mike.carey Mike Carey added a comment - Technical nit:  In Analytics the comparison evaluates to NULL (not to TRUE) and then the WHERE predicate filters such cases (because only the TRUEs survive).
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Labels functional-test functional-test triaged
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Labels functional-test triaged functional-test n1ql triaged
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Epic Link MB-24368 [ 68166 ]
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Sprint CX Sprint 112 [ 617 ]
            till Till Westmann made changes -
            Rank Ranked lower
            till Till Westmann made changes -
            Sprint CX Sprint 112 [ 617 ] CX Sprint 112, CX Sprint 113 [ 617, 618 ]
            till Till Westmann made changes -
            Rank Ranked higher
            ceej Chris Hillery made changes -
            Sprint CX Sprint 112, CX Sprint 113 [ 617, 618 ] CX Sprint 112, CX Sprint 113, CX Sprint 114 [ 617, 618, 619 ]
            till Till Westmann made changes -
            Sprint CX Sprint 112, CX Sprint 113, CX Sprint 114 [ 617, 618, 619 ] CX Sprint 112, CX Sprint 113, CX Sprint 114, CX Sprint 115 [ 617, 618, 619, 621 ]
            till Till Westmann made changes -
            Sprint CX Sprint 112, CX Sprint 113, CX Sprint 114, CX Sprint 115 [ 617, 618, 619, 621 ] CX Sprint 112, CX Sprint 113, CX Sprint 114, CX Sprint 115, CX Sprint 116 [ 617, 618, 619, 621, 637 ]

            Move non-critical issues to the next release.

            till Till Westmann added a comment - Move non-critical issues to the next release.
            till Till Westmann made changes -
            Fix Version/s Mad-Hatter [ 15037 ]
            Fix Version/s Alice [ 15048 ]
            Labels functional-test n1ql triaged Alice-candidate functional-test n1ql triaged

            Re-triage issues for the next release.

            till Till Westmann added a comment - Re-triage issues for the next release.
            till Till Westmann made changes -
            Labels Alice-candidate functional-test n1ql triaged Alice-candidate functional-test n1ql

            Removed from Alice, removing from sprint.

            till Till Westmann added a comment - Removed from Alice, removing from sprint.
            till Till Westmann made changes -
            Sprint CX Sprint 112, CX Sprint 113, CX Sprint 114, CX Sprint 115, CX Sprint 116 [ 617, 618, 619, 621, 637 ] CX Sprint 112, CX Sprint 113, CX Sprint 114, CX Sprint 115 [ 617, 618, 619, 621 ]
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Labels Alice-candidate functional-test n1ql functional-test n1ql
            till Till Westmann made changes -
            Labels functional-test n1ql functional-test n1ql triaged
            till Till Westmann made changes -
            Link This issue relates to MB-27570 [ MB-27570 ]
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Assignee Till Westmann [ till ] Ali Alsuliman [ ali.alsuilman ]
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Assignee Ali Alsuliman [ ali.alsuilman ] Till Westmann [ till ]
            till Till Westmann made changes -
            Rank Ranked higher
            dmitry.lychagin Dmitry Lychagin (Inactive) made changes -
            Fix Version/s Cheshire-Cat [ 15915 ]
            Fix Version/s Mad-Hatter [ 15037 ]

            Not being addressed for Mad-Hatter, moving to Cheshire-Cat

            dmitry.lychagin Dmitry Lychagin (Inactive) added a comment - Not being addressed for Mad-Hatter, moving to Cheshire-Cat
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Rank Ranked higher
            till Till Westmann made changes -
            Fix Version/s CheshireCat.Next [ 16908 ]
            Fix Version/s Cheshire-Cat [ 15915 ]
            till Till Westmann made changes -
            Fix Version/s bug-backlog [ 11600 ]
            Fix Version/s CheshireCat.Next [ 16908 ]
            till Till Westmann made changes -
            Rank Ranked lower
            till Till Westmann made changes -
            Rank Ranked lower
            till Till Westmann made changes -
            Rank Ranked lower

            People

              till Till Westmann
              ritesh.agarwal Ritesh Agarwal
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty