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

HiveConf creation in HiveMetastore's getMS() call adds ~100ms latency

Log workAgile BoardRank to TopRank to BottomBulk Copy AttachmentsBulk Move AttachmentsVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Invalid
    • 2.3.4
    • None
    • Metastore
    • None

    Description

      The changes to HMSHandler's getMSForConf introduced in the commit https://github.com/apache/hive/commit/9a47cf9f92d1c8a4e72890e3dfe2d9567f12bfb5 makes getMSForConf and newRawStoreForConf static and hence adds an additional HiveConf object creation step for every metastore connection created.

      In a client like Presto, which creates a new metastore connection for every query, the object creation rate shoots up leading to higher heap usage, more frequent garbage collection, higher garbage collection times and increased latency in the service. We noticed a constant ~100ms increase in latency of all metastore calls during migration of HMS from 1x to 2x for Presto.

      PFA the latency difference of a get_table call between 1x and 2x. Min of 22ms in 1x vs 103ms in 2x

       

       

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            sahanabhat Sahana Bhat Assign to me
            sahanabhat Sahana Bhat
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment