No problem, but thanks a lot for the feedback and considerations. I will try to 
get into the process on how to update the Solr ref guide. I found a lot of 
things that I could solve to facilitate others to do a solution based on Solr.

> Am 20.11.2019 um 13:04 schrieb Joel Bernstein <joels...@gmail.com>:
> 
> 
> Ah, I should have noticed that. Yes, there was a change in how string 
> literals are handled. Quotes are now required for string literals in Math 
> Expressions. I suspect this change is going to cause problems for other 
> people as well, but it needed to be done to clarify aspects of the language. 
> Sorry for the confusion. I'll make a point of updating the documentation to 
> make sure all examples in the documentation are correct.
> 
> 
> Joel Bernstein
> http://joelsolr.blogspot.com/
> 
> 
>> On Tue, Nov 19, 2019 at 5:56 PM Jörn Franke <jornfra...@gmail.com> wrote:
>> Ok, solved.  Solr 8.2 accepted this statement:
>> select(search(testcollection,q="test",df="Default",defType="edismax",fl="id",
>>  qt="/export", sort="id asc"),id,if(eq(1,1),Y,N) as found) 
>> 
>> and return to me the expected results. Note that around Y and N there is no 
>> ". Solr 8.3 requires the following statement
>> select(search(testcollection,q="test",df="Default",defType="edismax",fl="id",
>>  qt="/export", sort="id asc"),id,if(eq(1,1),"Y","N") as found)
>> to return the exact results. I do not know why I did originally not include 
>> the quotation marks around Y and N, but it seems that 8.2 accepted this and 
>> 8.3 not. I will update the Jira.
>> 
>>  
>> 
>>> On Tue, Nov 19, 2019 at 11:25 PM Jörn Franke <jornfra...@gmail.com> wrote:
>>> Could it be that Solr 8.3 is more strict on the if statement?
>>> the statement if(eq(1,1),Y,N)  
>>> is supposed to return the character Y (not the field). In Solr 8.2 it 
>>> returns the character Y, but in Solr 8.3 not. 
>>> 
>>>> On Tue, Nov 19, 2019 at 11:21 PM Jörn Franke <jornfra...@gmail.com> wrote:
>>>> thanks i will find another installation of Solr, but last time the 
>>>> underlying queries to the export handler were correct. What was wrong was 
>>>> the generated field "found" based on the if statement based NOT on any 
>>>> data in the collectioj.  As said, in Solr 8.3 the id fields are returned, 
>>>> but not the "found" field, which is generated by the selected statement:
>>>> select(search(testcollection,q="test",df="Default",defType="edismax",fl="id",
>>>>  qt="/export", sort="id asc"),id,if(eq(1,1),Y,N) as found) 
>>>> 
>>>> returns a tuple 
>>>> id: "blabla"
>>>> 
>>>> but not the part generated by the if(eq(1,1),Y,N) as found. In Solr 8.2 
>>>> the found field is returned:
>>>> id: "blabla"
>>>> found: "Y"
>>>> To my best knowledge this is a fully generated field => it does not depend 
>>>> on the underlying collection data and the export handler. This was done to 
>>>> exclude any issues with this one.
>>>> it states simply if 1=1 return Y else N
>>>> 
>>>> 
>>>>> On Fri, Nov 8, 2019 at 3:20 PM Joel Bernstein <joels...@gmail.com> wrote:
>>>>> Before moving to a jira let's take a look at the underlying Solr queries 
>>>>> in the log. The Streaming Expressions just creates solr queries, in this 
>>>>> case queries to the /export handler. So when something is not working as 
>>>>> expected we want to strip away the streaming expression and debug the 
>>>>> actual queries that are being run.
>>>>> 
>>>>> You can find the Solr queries that appear in the log after running the 
>>>>> expressions and then try running them outside of the expression as plain 
>>>>> Solr queries.
>>>>> 
>>>>> You can also post the Solr queries to this thread and we discuss what the 
>>>>> logs say.
>>>>> 
>>>>> In these cases the logs always are the way to debug whats going on.
>>>>> 
>>>>> 
>>>>> Joel Bernstein
>>>>> http://joelsolr.blogspot.com/
>>>>> 
>>>>> 
>>>>>> On Wed, Nov 6, 2019 at 4:14 PM Jörn Franke <jornfra...@gmail.com> wrote:
>>>>>> I created a JIRA for this:
>>>>>> https://issues.apache.org/jira/browse/SOLR-13894
>>>>>> 
>>>>>>> On Wed, Nov 6, 2019 at 10:45 AM Jörn Franke <jornfra...@gmail.com> 
>>>>>>> wrote:
>>>>>>> I have checked now Solr 8.3 server in admin UI. Same issue.
>>>>>>> 
>>>>>>> Reproduction:
>>>>>>> select(search(testcollection,q=“test”,df=“Default”,defType=“edismax”,fl=“id”,
>>>>>>>  qt=“/export”, sort=“id asc”),id,if(eq(1,1),Y,N) as found)
>>>>>>> 
>>>>>>> In 8.3 it returns only the id field.
>>>>>>> In 8.2 it returns id,found field.
>>>>>>> 
>>>>>>> Since found is generated by select (and not coming from the collection) 
>>>>>>> there must be an issue with select. 
>>>>>>> 
>>>>>>> Any idea why this is happening.
>>>>>>> 
>>>>>>> Debug logs do not show any error and the expression is correctly 
>>>>>>> received by Solr.
>>>>>>> 
>>>>>>> Thank you.
>>>>>>> 
>>>>>>> Best regards
>>>>>>> 
>>>>>>> > Am 05.11.2019 um 14:59 schrieb Jörn Franke <jornfra...@gmail.com>:
>>>>>>> > 
>>>>>>> > Thanks I will check and come back to you. As far as I remember (but 
>>>>>>> > have to check) the queries generated by Solr were correct
>>>>>>> > 
>>>>>>> > Just to be clear the same thing works with Solr 8.2 server and Solr 
>>>>>>> > 8.2 client.
>>>>>>> > 
>>>>>>> > It show the odd behaviour with Solr 8.2 server and Solr 8.3 client.
>>>>>>> > 
>>>>>>> >> Am 05.11.2019 um 14:49 schrieb Joel Bernstein <joels...@gmail.com>:
>>>>>>> >> 
>>>>>>> >> I'll probably need some more details. One thing that's useful is to 
>>>>>>> >> look at
>>>>>>> >> the logs and see the underlying Solr queries that are generated. 
>>>>>>> >> Then try
>>>>>>> >> those underlying queries against the Solr index and see what comes 
>>>>>>> >> back. If
>>>>>>> >> you're not seeing the fields with the plain Solr queries then we 
>>>>>>> >> know it's
>>>>>>> >> something going on below streaming expressions. If you are seeing the
>>>>>>> >> fields then it's the expressions themselves that are not handling 
>>>>>>> >> the data
>>>>>>> >> as expected.
>>>>>>> >> 
>>>>>>> >> 
>>>>>>> >> Joel Bernstein
>>>>>>> >> http://joelsolr.blogspot.com/
>>>>>>> >> 
>>>>>>> >> 
>>>>>>> >>>> On Mon, Nov 4, 2019 at 9:09 AM Jörn Franke <jornfra...@gmail.com> 
>>>>>>> >>>> wrote:
>>>>>>> >>> 
>>>>>>> >>> Most likely this issue can bei also reproduced in the admin UI for 
>>>>>>> >>> the
>>>>>>> >>> streaming handler of a collection.
>>>>>>> >>> 
>>>>>>> >>>>> Am 04.11.2019 um 13:32 schrieb Jörn Franke <jornfra...@gmail.com>:
>>>>>>> >>>> 
>>>>>>> >>>> Hi,
>>>>>>> >>>> 
>>>>>>> >>>> I use streaming expressions, e.g.
>>>>>>> >>>> Sort(Select(search(...),id,if(eq(1,1),Y,N) as found), by=“field A 
>>>>>>> >>>> asc”)
>>>>>>> >>>> (Using export handler, sort is not really mandatory , I will 
>>>>>>> >>>> remove it
>>>>>>> >>> later anyway)
>>>>>>> >>>> 
>>>>>>> >>>> This works perfectly fine if I use Solr 8.2.0 (server + client). It
>>>>>>> >>> returns Tuples in the form { “id”,”12345”, “found”:”Y”}
>>>>>>> >>>> 
>>>>>>> >>>> However, if I use Solr 8.2.0 as server and Solr 8.3.0 as client 
>>>>>>> >>>> then the
>>>>>>> >>> above statement only returns the id field, but not the found field.
>>>>>>> >>>> 
>>>>>>> >>>> Questions:
>>>>>>> >>>> 1) is this expected behavior, ie Solr client 8.3.0 is in this case 
>>>>>>> >>>> not
>>>>>>> >>> compatible with Solr 8.2.0 and server upgrade to Solr 8.3.0 will 
>>>>>>> >>> fix this?
>>>>>>> >>>> 2) has the syntax for the above expression changed? If so how?
>>>>>>> >>>> 3) is this not expected behavior and I should create a Jira for it?
>>>>>>> >>>> 
>>>>>>> >>>> Thank you.
>>>>>>> >>>> Best regards
>>>>>>> >>> 

Reply via email to