Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-11314

FastCharStream should avoid creating new IOExceptions as a signaling mechanism

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 6.6.1, 7.0, master (8.0)
    • Fix Version/s: 7.1, master (8.0)
    • Component/s: None
    • Security Level: Public (Default Security Level. Issues are Public)
    • Labels:
      None
    • Flags:
      Patch

      Description

      FastCharStream is used internally by solr query parser classes. It throws a new IOException to signal the end. However, this is quite expensive relative to most operations and it shows up very high on samples for extremely high query cases. The IOException should be a single static instance that can be shared to avoid the overhead in creation and populating the stack trace, a stack trace which is never used.

        Attachments

        1. Screen Shot 2017-09-06 at 8.21.18 PM.png
          134 kB
          Michael Braun
        2. SOLR-11314.patch
          1 kB
          Michael Braun
        3. TestQueryPerfSpeedup.java
          4 kB
          Michael Braun

          Issue Links

            Activity

              People

              • Assignee:
                dsmiley David Smiley
                Reporter:
                mbraun688 Michael Braun
              • Votes:
                1 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: