I just confirmed that the following query works as expected: search(collection2, q="test_s:\"hello world\"", fl="id", sort="id desc")
In this case the double quotes are used to specify a phrase query. But this fails: search(collection2, q="test_s:\"hello world", fl="id", sort="id desc") In this case the double quote is used as part of the term, which is what I believe you had in mind. SOLR-10894, I believe was created to address this issue but as of yet no patch is available. Joel Bernstein http://joelsolr.blogspot.com/ On Thu, May 24, 2018 at 12:38 PM, Joel Bernstein <joels...@gmail.com> wrote: > Also while looking at you're query it looks like you are getting error > from the solr query parser. I believe the this is the issue you are facing: > > https://issues.apache.org/jira/browse/SOLR-10894 > > I'll confirm, but I believe this query should work: > > search(collection1, q="test \"hello world\""...) > > In the query about the double quotes are escaped and send to Solr > unescaped to form the query: test "hello world". The query parse has no > problem parsing this. > > But you're using a double quote not as part of query syntax, but as part > of the query term. This is where I believe SOLR-10894 comes into play. > > > > > Joel Bernstein > http://joelsolr.blogspot.com/ > > On Thu, May 24, 2018 at 11:23 AM, Christian Spitzlay < > christian.spitz...@biologis.com> wrote: > >> Hello, >> >> I’m experimenting with streaming expressions and I wonder how to escape a >> double quote in a value. >> I am on 7.3.0 and trying with the text area on >> http://localhost:8983/solr/#/collname/stream >> >> The following expression works for me and returns results: >> search(kmm, q="sds_endpoint_name:F2", fl="sds_endpoint_name", >> sort="sds_endpoint_name ASC", qt="/export“) >> >> When I try to add a double quote to the value quoted with a backslash >> like this: >> search(kmm, q="sds_endpoint_name:F\"2", fl="sds_endpoint_name", >> sort="sds_endpoint_name ASC", qt="/export") >> I get an exception with message: >> >> org.apache.solr.search.SyntaxError: Cannot parse >> 'sds_endpoint_name:F\"2': Lexical error at line 1, column 22. >> Encountered: after : \"\\\"2\“", >> >> I tried several more levels of escaping with backslashes but none worked >> so far >> (only the error message was different as sometimes the expression was >> broken in different ways) >> >> >> On http://localhost:8983/solr/#/collname/query, entering >> sds_endpoint_name:F\“2 >> as the q parameter does not throw a syntax error and an empty result is >> returned >> (which is to be expected as there is no document with a quote in the name >> at the moment). >> >> >> Is there a correct way to escape the double quote in a streaming >> expression? >> >> >> Best regards >> Christian >> >> >