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

Improve ByteStream by removing all synchronized method calls

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.4.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed
    • Release Note:
      Hide
      HIVE-720. Improve ByteStream by removing all synchronized method calls. (Yongqiang He via zshao)
      Show
      HIVE-720 . Improve ByteStream by removing all synchronized method calls. (Yongqiang He via zshao)

      Description

      org.apache.hadoop.hive.serde2.ByteStream has 2 inner classes: Input and Output, which inherits from ByteArrayInputStream and ByteArrayOutputStream.
      Both these classes have a lot of sychronized methods, which make them really slow.

      We should let ByteStream.Input and ByteStream.Output directly inherit InputStream and OutputStream so we don't need to call synchronized methods at all. This will help LazySimpleSerDe, ColumnarSerDe as well as LazyBinarySerDe.

        Attachments

        1. HIVE-720.2.patch
          45 kB
          He Yongqiang
        2. HIVE-720.1.patch
          12 kB
          He Yongqiang

          Activity

            People

            • Assignee:
              he yongqiang He Yongqiang
              Reporter:
              zshao Zheng Shao
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: