Hi,

Forget about it, after ten years without SQL, i managed to forget i had to wrap 
the WHERE value in quotes, single quotes in this case.

Thanks,
Markus
 
 
-----Original message-----
> From:Markus Jelsma <markus.jel...@openindex.io>
> Sent: Wednesday 29th August 2018 11:51
> To: solr-user <solr-user@lucene.apache.org>
> Subject: 7.4.0 SQL handler throws exception if WHERE clause is present
> 
> Hello,
> 
> I was, finally, trying the SQL handler on one of our collections. Executing a 
> SELECT * FROM logs LIMIT 10 runs fine, but restricting the set using a WHERE 
> clause gives me the exception below. The type field is a String type, indexed 
> and has DocValues.
> 
> I must be doing something wrong, but have no idea what.
> 
> Many thanks,
> Markus
> 
> stmt=SELECT * FROM logs WHERE type=query LIMIT 10 gives me:
> 
> java.lang.AssertionError: cannot translate call =(CAST($7):VARCHAR CHARACTER 
> SET "ISO-8859-1" COLLATE "ISO-8859-1$en_US$primary", CAST($2):VARCHAR 
> CHARACTER SET "ISO-8859-1" COLLATE "ISO-8859-1$en_US$primary") 
> at 
> org.apache.solr.handler.sql.SolrFilter$Translator.translateBinary(SolrFilter.java:181)
>  
> at 
> org.apache.solr.handler.sql.SolrFilter$Translator.translateComparison(SolrFilter.java:128)
>  
> at 
> org.apache.solr.handler.sql.SolrFilter$Translator.translateMatch(SolrFilter.java:81)
>  
> at 
> org.apache.solr.handler.sql.SolrFilter$Translator.access$100(SolrFilter.java:70)
>  
> at org.apache.solr.handler.sql.SolrFilter.implement(SolrFilter.java:64) 
> at 
> org.apache.solr.handler.sql.SolrRel$Implementor.visitChild(SolrRel.java:103) 
> at org.apache.solr.handler.sql.SolrSort.implement(SolrSort.java:58) 
> at 
> org.apache.solr.handler.sql.SolrRel$Implementor.visitChild(SolrRel.java:103) 
> at org.apache.solr.handler.sql.SolrProject.implement(SolrProject.java:55) 
> at 
> org.apache.solr.handler.sql.SolrRel$Implementor.visitChild(SolrRel.java:103) 
> at 
> org.apache.solr.handler.sql.SolrToEnumerableConverter.implement(SolrToEnumerableConverter.java:61)
>  
> at 
> org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.implementRoot(EnumerableRelImplementor.java:108)
>  
> at 
> org.apache.calcite.adapter.enumerable.EnumerableInterpretable.toBindable(EnumerableInterpretable.java:92)
>  
> at 
> org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt.implement(CalcitePrepareImpl.java:1257)
>  
> at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:331) 
> at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:228) 
> at 
> org.apache.calcite.prepare.CalcitePrepareImpl.prepare2_(CalcitePrepareImpl.java:784)
>  
> at 
> org.apache.calcite.prepare.CalcitePrepareImpl.prepare_(CalcitePrepareImpl.java:639)
>  
> at 
> org.apache.calcite.prepare.CalcitePrepareImpl.prepareSql(CalcitePrepareImpl.java:609)
>  
> at 
> org.apache.calcite.jdbc.CalciteConnectionImpl.parseQuery(CalciteConnectionImpl.java:214)
>  
> at 
> org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:603)
>  
> at 
> org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:638)
>  
> at 
> org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:149)
>  
> at 
> org.apache.calcite.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:218)
>  
> at 
> org.apache.solr.client.solrj.io.stream.JDBCStream.open(JDBCStream.java:269) 
> at 
> org.apache.solr.client.solrj.io.stream.ExceptionStream.open(ExceptionStream.java:54)
>  
> at 
> org.apache.solr.handler.StreamHandler$TimerStream.open(StreamHandler.java:397)
>  
> at 
> org.apache.solr.client.solrj.io.stream.TupleStream.writeMap(TupleStream.java:83)
> 

Reply via email to