You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Rajesh Balamohan (JIRA)" <ji...@apache.org> on 2016/12/08 11:08:58 UTC

[jira] [Created] (HIVE-15388) HiveParser spends lots of time in parsing queries with lots "("

Rajesh Balamohan created HIVE-15388:
---------------------------------------

             Summary: HiveParser spends lots of time in parsing queries with lots "("
                 Key: HIVE-15388
                 URL: https://issues.apache.org/jira/browse/HIVE-15388
             Project: Hive
          Issue Type: Improvement
            Reporter: Rajesh Balamohan


Branch: apache-master (applicable with previous releases as well)

Queries generated via tools can have lots "(" for "AND/OR" conditions. This causes huge delays in parsing phase when the number of expressions are high.

e.g
{noformat}
SELECT `iata`,
       `airport`,
       `city`,
       `state`,
       `country`,
       `lat`,
       `lon`
FROM airports
WHERE ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((`airports`.`airport` = "Thigpen"
                                                                                OR `airports`.`airport` = "Astoria Regional")
                                                                               OR `airports`.`airport` = "Warsaw Municipal")
                                                                              OR `airports`.`airport` = "John F Kennedy Memorial")
                                                                             OR `airports`.`airport` = "Hall-Miller Municipal")
                                                                            OR `airports`.`airport` = "Atqasuk")
                                                                           OR `airports`.`airport` = "William B Hartsfield-Atlanta Intl")
                                                                          OR `airports`.`airport` = "Artesia Municipal")
                                                                         OR `airports`.`airport` = "Outagamie County Regional")
                                                                        OR `airports`.`airport` = "Watertown Municipal")
                                                                       OR `airports`.`airport` = "Augusta State")
                                                                      OR `airports`.`airport` = "Aurora Municipal")
                                                                     OR `airports`.`airport` = "Alakanuk")
                                                                    OR `airports`.`airport` = "Austin Municipal")
                                                                   OR `airports`.`airport` = "Auburn Municipal")
                                                                  OR `airports`.`airport` = "Auburn-Opelik")
                                                                 OR `airports`.`airport` = "Austin-Bergstrom International")
                                                                OR `airports`.`airport` = "Wausau Municipal")
                                                               OR `airports`.`airport` = "Mecklenburg-Brunswick Regional")
                                                              OR `airports`.`airport` = "Alva Regional")
                                                             OR `airports`.`airport` = "Asheville Regional")
                                                            OR `airports`.`airport` = "Avon Park Municipal")
                                                           OR `airports`.`airport` = "Wilkes-Barre/Scranton Intl")
                                                          OR `airports`.`airport` = "Marana Northwest Regional")
                                                         OR `airports`.`airport` = "Catalina")
                                                        OR `airports`.`airport` = "Washington Municipal")
                                                       OR `airports`.`airport` = "Wainwright")
                                                      OR `airports`.`airport` = "West Memphis Municipal")
                                                     OR `airports`.`airport` = "Arlington Municipal")
                                                    OR `airports`.`airport` = "Algona Municipal")
                                                   OR `airports`.`airport` = "Chandler")
                                                  OR `airports`.`airport` = "Altus Municipal")
                                                 OR `airports`.`airport` = "Neil Armstrong")
                                                OR `airports`.`airport` = "Angel Fire")
                                               OR `airports`.`airport` = "Waycross-Ware County")
                                              OR `airports`.`airport` = "Colorado City Municipal")
                                             OR `airports`.`airport` = "Hazelhurst")
                                            OR `airports`.`airport` = "Kalamazoo County")
                                           OR `airports`.`airport` = "Granville")
                                          OR `airports`.`airport` = "Silver Springs")
                                         OR `airports`.`airport` = "Whitford")
                                        OR `airports`.`airport` = "Biddeford Municipal")
                                       OR `airports`.`airport` = "Sugarloaf Regional")
                                      OR `airports`.`airport` = "Barnes Municipal")
                                     OR `airports`.`airport` = "Columbus Municipal")
                                    OR `airports`.`airport` = "Battle Mountain")
                                   OR `airports`.`airport` = "Huron County Memorial")
                                  OR `airports`.`airport` = "New Braunfels Municipal")
                                 OR `airports`.`airport` = "Benson Municipal")
                                OR `airports`.`airport` = "Curtis")
                               OR `airports`.`airport` = "Marlboro County")
                              OR `airports`.`airport` = "Broken Bow Municipal")
                             OR `airports`.`airport` = "Virginia Tech")
                            OR `airports`.`airport` = "Bryce Canyon")
                           OR `airports`.`airport` = "Black River Falls Area")
                          OR `airports`.`airport` = "Boca Raton")
                         OR `airports`.`airport` = "Birchwood")
                        OR `airports`.`airport` = "Baudette International")
                       OR `airports`.`airport` = "Blanding Muni")
                      OR `airports`.`airport` = "Bradley International")
                     OR `airports`.`airport` = "Morrilton Municipal")
                    OR `airports`.`airport` = "Igor I Sikorsky Memorial")
                   OR `airports`.`airport` = "Broadus")
                  OR `airports`.`airport` = "Laurence G Hanscom")
                 OR `airports`.`airport` = "Southwest Michigan Regional")
                OR `airports`.`airport` = "Bethel")
               OR `airports`.`airport` = "Bradford Reg")
              OR `airports`.`airport` = "Scotts Bluff County")
             OR `airports`.`airport` = "Boeing Field/King County Intl")
            OR `airports`.`airport` = "Buffalo Municipal")
           OR `airports`.`airport` = "Meadows")
          OR `airports`.`airport` = "Mobile Downtown")
         OR `airports`.`airport` = "Virgil I Grissom Municipal")
        OR `airports`.`airport` = "Silver Bay Municipal");
{noformat}

This query would take more than minutes to parse and compile.  If the "(" are removed manually, it gets completed in 2-3 seconds.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)