Vitezslav Zak created SOLR-10383:
------------------------------------

             Summary: NPE on debug query in SOLR UI - LTR OriginalScoreFeature
                 Key: SOLR-10383
                 URL: https://issues.apache.org/jira/browse/SOLR-10383
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
    Affects Versions: 6.4.2
            Reporter: Vitezslav Zak


Hi,

there is a NPE if I want to debug query in SOLR UI.

I'm using LTR for reranking result.

My features:
{code:json}
{
  "initArgs":{},
  "initializedOn":"2017-03-29T05:32:52.160Z",
  "updatedSinceInit":"2017-03-29T05:56:28.721Z",
  "managedList":[
    {
      "name":"documentRecency",
      "class":"org.apache.solr.ltr.feature.SolrFeature",
      "params":{"q":"{!func}recip( ms(NOW,initial_release_date), 3.16e-11, 1, 
1)"},
      "store":"_DEFAULT_"},
    {
      "name":"niceness",
      "class":"org.apache.solr.ltr.feature.SolrFeature",
      "params":{"fq":["{!func}recip(niceness, 0.1, 1, 1)"]},
      "store":"_DEFAULT_"},
    {
      "name":"originalScore",
      "class":"org.apache.solr.ltr.feature.OriginalScoreFeature",
      "params":null,
      "store":"_DEFAULT_"}]}
{code}

My model:
{code:json}
{
  "initArgs":{},
  "initializedOn":"2017-03-29T05:32:52.167Z",
  "updatedSinceInit":"2017-03-29T05:54:26.100Z",
  "managedList":[{
      "name":"myModel",
      "class":"org.apache.solr.ltr.model.LinearModel",
      "store":"_DEFAULT_",
      "features":[
        {
          "name":"documentRecency",
          "norm":{"class":"org.apache.solr.ltr.norm.IdentityNormalizer"}},
        {
          "name":"niceness",
          "norm":{"class":"org.apache.solr.ltr.norm.IdentityNormalizer"}},
        {
          "name":"originalScore",
          "norm":{"class":"org.apache.solr.ltr.norm.IdentityNormalizer"}}],
      "params":{"weights":{
          "documentRecency":0.1,
          "niceness":1.0,
          "originalScore":0.5}}}]}
{code}

NPE occurs in this method, where docInfo is null.
{code:title=OriginalScoreFeature.java}
@Override
      public float score() throws IOException {
        // This is done to improve the speed of feature extraction. Since this
        // was already scored in step 1
        // we shouldn't need to calc original score again.
        final DocInfo docInfo = getDocInfo();
        return (docInfo.hasOriginalDocScore() ? docInfo.getOriginalDocScore() : 
originalScorer.score());
      }
{code}





--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to