You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Vincenzo D'Amore (Jira)" <ji...@apache.org> on 2019/12/04 12:00:00 UTC

[jira] [Updated] (SOLR-13863) payload query function support for string encoded payloads (delimited_payloads_string)

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

Vincenzo D'Amore updated SOLR-13863:
------------------------------------
    Description: 
After a talk with Erick Erickson I was asked to incorporate this in Solr.

https://lucene.472066.n3.nabble.com/Solr-Payload-example-td4451173.html

I have the per-store pricing problem but payload function handles only numbers.

Stores can also be in different countries, for example would be useful having with the price also the currency and other attributes related to the store.

We could have add support for string encoded payloads fixing function query named *payload*.

Example document:

{
 {{  "id":"my sample doc",}}
 {{  "currencyPayload":[}}
 {{    "store1|EUR",}}
 {{    "store1|USD",}}
 {{    "store3|GBP"}}
 {{  ]}}
 }

Querying Solr with

{{fl=payload(currencyPayload,store3)}}

would generate a response like the following:

{
 {{  "response": {}}
 {{      "docs":[}}{
 {{         "id":"my sample doc", }}
 {{         "payload(currencyPayload,store3)":"GBP"}}
 {{      }]}}

    }
 {{}}}

And executing `payload(payloadCurrency,store2)` returns `EUR`, and so on.

You can use `payload` even as sorting function.

{{sort=payload(payloadField,value) asc}}

 

  was:
I have the per-store pricing problem but payload function handles only numbers.

Stores can also be in different countries, for example would be useful having with the price also the currency and other attributes related to the store.

We could have add support for string encoded payloads fixing function query named *payload*.

Example document:

{
 {{  "id":"my sample doc",}}
 {{  "currencyPayload":[}}
 {{    "store1|EUR",}}
 {{    "store1|USD",}}
 {{    "store3|GBP"}}
 {{  ]}}
 }

Querying Solr with

{{fl=payload(currencyPayload,store3)}}

would generate a response like the following:

{
 {{  "response": {}}
 {{      "docs":[}}{
 {{         "id":"my sample doc", }}
 {{         "payload(currencyPayload,store3)":"GBP"}}
 {{      }]}}

    }
 {{}}}

And executing `payload(payloadCurrency,store2)` returns `EUR`, and so on.

You can use `payload` even as sorting function.

{{sort=payload(payloadField,value) asc}}

 


> payload query function support for string encoded payloads (delimited_payloads_string)
> --------------------------------------------------------------------------------------
>
>                 Key: SOLR-13863
>                 URL: https://issues.apache.org/jira/browse/SOLR-13863
>             Project: Solr
>          Issue Type: New Feature
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: query parsers, search, SearchComponents - other
>            Reporter: Vincenzo D'Amore
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 2h
>  Remaining Estimate: 0h
>
> After a talk with Erick Erickson I was asked to incorporate this in Solr.
> https://lucene.472066.n3.nabble.com/Solr-Payload-example-td4451173.html
> I have the per-store pricing problem but payload function handles only numbers.
> Stores can also be in different countries, for example would be useful having with the price also the currency and other attributes related to the store.
> We could have add support for string encoded payloads fixing function query named *payload*.
> Example document:
> {
>  {{  "id":"my sample doc",}}
>  {{  "currencyPayload":[}}
>  {{    "store1|EUR",}}
>  {{    "store1|USD",}}
>  {{    "store3|GBP"}}
>  {{  ]}}
>  }
> Querying Solr with
> {{fl=payload(currencyPayload,store3)}}
> would generate a response like the following:
> {
>  {{  "response": {}}
>  {{      "docs":[}}{
>  {{         "id":"my sample doc", }}
>  {{         "payload(currencyPayload,store3)":"GBP"}}
>  {{      }]}}
>     }
>  {{}}}
> And executing `payload(payloadCurrency,store2)` returns `EUR`, and so on.
> You can use `payload` even as sorting function.
> {{sort=payload(payloadField,value) asc}}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org