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

[N1QL RQG] Long nested subqueries are timing out with forestdb gsi type in 4.6.4

    XMLWordPrintable

Details

    • Bug
    • Resolution: Cannot Reproduce
    • Major
    • bug-backlog
    • 4.6.4
    • query
    • 4.6.4-4544
    • Untriaged
    • No

    Description

      RQG job which fails:
      http://qa.sc.couchbase.com/job/cen006-n1ql-vset04-01-rqg-subqueryenhancements-multiple-table-primary-secondary-tests

      This job fails only in 4.6.4 with forestdb gsi type.
      In 5.0 and 5.1 it passes with plasma as default gsi_type.

      The query which times out:

      SELECT tb_B4580.* FROM ( SELECT t_5.*,(SELECT t_1.productId FROM  t_5.simple_table_2 t_1   WHERE  t_1.primary_key_id=t_5.primary_key_id    ORDER BY  t_1.price desc limit 1) ABC FROM multiple_table_db_9911_simple_table_1 t_5 WHERE NOT EXISTS     (SELECT * FROM  multiple_table_db_9911_simple_table_1  t_1   USE KEYS [t_5.primary_key_id] WHERE     ((t_1.bool_field1 AND t_1.primary_key_id  IN [  "1" , "10" , "100" , "1000" , "101"  ])) AND (((((t_1.bool_field1 = true AND t_1.decimal_field1 > 5097)) AND ((NOT (t_1.decimal_field1 IS NULL) AND t_1.primary_key_id <= "549" AND NOT (t_1.bool_field1))) OR ((t_1.bool_field1 = true OR t_1.int_field1 < 5049)) AND (NOT (t_1.decimal_field1 IS NOT NULL))) OR ((t_1.char_field1 >= "N") AND ((t_1.bool_field1 AND t_1.int_field1 = 5049)) OR ((t_1.bool_field1 != true AND t_1.decimal_field1 < 5097)) AND ((t_1.char_field1 LIKE '%N%' AND t_1.int_field1  IN [  31 , 43 , 51 , 73 , 75  ])))) OR ((((t_1.bool_field1 != false OR NOT (t_1.primary_key_id NOT LIKE '%549%'))) AND ((NOT (t_1.bool_field1) AND ((t_1.decimal_field1 < 5097) OR (t_1.decimal_field1 >= 5097)) AND (t_1.decimal_field1 <= 5097)))) AND (NOT ((((t_1.bool_field1 OR t_1.primary_key_id < "549")) AND ((t_1.int_field1 = 5049 OR t_1.varchar_field1 IS NULL))) OR (((((((t_1.bool_field1 OR t_1.int_field1 > 5049)) OR ((t_1.decimal_field1 = 5097 OR t_1.varchar_field1 < "ZeaMrFNzoX"))) AND (((t_1.int_field1 = 5049 OR NOT (t_1.varchar_field1 IS NULL))) AND ((t_1.char_field1 = "N" AND t_1.int_field1 <= 5049)))) AND (NOT (t_1.int_field1  IN [  31 , 43 , 51 , 73 , 75  ]))) OR (NOT (((t_1.int_field1 >= 5049 AND t_1.varchar_field1 != "ZeaMrFNzoX" AND t_1.bool_field1 = true)) OR ((t_1.bool_field1 AND t_1.int_field1 IS NOT NULL))))) AND (((t_1.bool_field1 AND t_1.int_field1 > 5049)) OR ((t_1.bool_field1 OR t_1.decimal_field1 BETWEEN 5 and 9996))))))))     )      ) tb_B4580 order by meta().id limit 5
      

      Is this expected?

      Attachments

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

        Activity

          People

            Donald.haggart Donald Haggart
            Prerna.Manaktala Prerna Manaktala (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty