[ 
https://issues.apache.org/jira/browse/SOLR-10383?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vitezslav Zak updated SOLR-10383:
---------------------------------
    Description: 
Hi,

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

I'm using LTR for reranking result.

My features:
{code}
{
  "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}
{
  "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}



  was:
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}




> 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
>   Original Estimate: 5m
>  Remaining Estimate: 5m
>
> Hi,
> there is a NPE if I want to debug query in SOLR UI.
> I'm using LTR for reranking result.
> My features:
> {code}
> {
>   "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}
> {
>   "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