Uploaded image for project: 'Commons IO'
  1. Commons IO
  2. IO-286

FastByteArray*Stream implementations to replace syncronized JDK ByteArray*Stream

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • None
    • None
    • Streams/Writers

    Description

      In CASSANDRA-2820 I reintoduced the FastByteArrayInputStream and FastByteArrayOutputStream to cassandra. These steams are un-synchronized versions of the Apache Harmony ByteArrayInputStream and ByteArrayOutputStream respectively.

      During my own testing of the streams I found a big difference in the performance of the standard JDK BA*S steams and the FBA*S streams on most JREs. Then cassandra load testing also showed an up to 10% improvement in cassandra performance using these streams.

      Then Thrift has TByteArrayOutputStream which contains a way to get the underlying byte[] buffer without a deep copy that would probably be a good further enhancement.

      Patch to follow.

      Attachments

        Activity

          People

            Unassigned Unassigned
            keteracel Paul Loy
            Votes:
            3 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:

              Time Tracking

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