Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-24861

Hive JDBC driver doesn't consider the value of 'hasMoreRows'

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • JDBC

    Description

      TCLIService's FetchResults might return an empty result set, but with hasMoreRows=true. In that case the driver ignores the flag hasMoreRows and thinks it is the end of the result stream, causing data loss.

      I've seen this when the Hive JDBC driver was used to connect to Impala. IMPALA-7312 introduced a timeout on FetchResults(). If Impala cannot produce rows in the given timeout then it returns an empty result set, but setting hasMoreRows=true. However, the Hive JDBC driver interprets it as the end of the result stream and closes the operation.

      I think if hasMoreRows=true then the Hive JDBC driver should issue FetchResults() again.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              boroknagyz Zoltán Borók-Nagy
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h
                  1h