Solr
  1. Solr
  2. SOLR-921

SolrResourceLoader must cache short name vs fully qualified name

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.4
    • Component/s: None
    • Labels:
      None

      Description

      every class that is loaded through SolrResourceLoader does a Class.forName() and when if it is not found a ClassNotFoundExcepton is thrown

      Then , it looks up with the various packages and finds the right class if the name starts with solr. Considering the fact that we usually use this solr.<classname> format we pay too much of a price for this. After every lookup the result can be cached in a static Map<String, String> with short name as keys and fully qualified name as values and can be shared across all the cores and this Map can be stored at the CoreContainer level.

      1. SOLR-921.patch
        3 kB
        Noble Paul
      2. SOLR-921.patch
        3 kB
        Noble Paul
      3. SOLR-921.patch
        3 kB
        Noble Paul
      4. SOLR-921.patch
        3 kB
        Noble Paul

        Issue Links

          Activity

          Grant Ingersoll made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Shalin Shekhar Mangar made changes -
          Link This issue blocks SOLR-1293 [ SOLR-1293 ]
          Shalin Shekhar Mangar made changes -
          Resolution Fixed [ 1 ]
          Status Open [ 1 ] Resolved [ 5 ]
          Shalin Shekhar Mangar made changes -
          Description every class that is loaded through SolrResourceLoader does a Class.forName() and when if it is not found a ClassNotFoundExcepton is thrown

          Then , it looks up with the various packages and finds the right class if the name starts with solr. Considering the fact that we usually use this solr.<classname> format we pay too much of a price for this. After every lookup the result can be cached in a Map<String,Class> and can be shared across all the cores and this Map can be stored at the CoreContainer level
          every class that is loaded through SolrResourceLoader does a Class.forName() and when if it is not found a ClassNotFoundExcepton is thrown

          Then , it looks up with the various packages and finds the right class if the name starts with solr. Considering the fact that we usually use this solr.<classname> format we pay too much of a price for this. After every lookup the result can be cached in a static Map<String, String> with short name as keys and fully qualified name as values and can be shared across all the cores and this Map can be stored at the CoreContainer level.
          Shalin Shekhar Mangar made changes -
          Summary SolrResourceLoader must cache name vs class SolrResourceLoader must cache short name vs fully qualified name
          Noble Paul made changes -
          Attachment SOLR-921.patch [ 12400263 ]
          Noble Paul made changes -
          Attachment SOLR-921.patch [ 12400023 ]
          Shalin Shekhar Mangar made changes -
          Assignee Shalin Shekhar Mangar [ shalinmangar ]
          Noble Paul made changes -
          Attachment SOLR-921.patch [ 12398811 ]
          Noble Paul made changes -
          Fix Version/s 1.4 [ 12313351 ]
          Noble Paul made changes -
          Field Original Value New Value
          Attachment SOLR-921.patch [ 12396180 ]
          Noble Paul created issue -

            People

            • Assignee:
              Shalin Shekhar Mangar
              Reporter:
              Noble Paul
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development