It seems Liferay uses Apache Solr to look for users, that query is
incorrect though :

*+((+entryClassName:com.liferay.portal.kernel.model.User +status:5)) *->
this clause is valid, redundant mandatory wrapping clause, but it should
work fine and it means results must contain  "5 in status", and
"com.liferay.portal.kernel.model.User in entryClassName

 +(companyId:20116) -> another valid clause, mandatory "20116 in companyId"

+(+()) -> as far as I know (and the column number 74 points in this
direction), this empty clause causes the exception, that's clearly a bug of
the query builder that generated that query string and send it to Apache
Solr through the Lucene Query Parser, this doesn't mean anything in the
Lucene Query Language.
>From the log the LuceneQueryParser is used.
(I may be wrong, sometimes we see a toString of the query in the logs,
which may be slightly different from what the user passed, but probably the
client supplied that exact query)


Cheers
--------------------------
Alessandro Benedetti
Apache Lucene/Solr Committer
Director, R&D Software Engineer, Search Consultant

www.sease.io


On Tue, 8 Jun 2021 at 21:29, Félix Martín Celaya Murguía <
felix.cel...@corprama.com.mx> wrote:

> Hello everybody,
> I wish you could guide me to solve a problem in my environment that
> consists of the following components:
>
> - CMS: Liferay DXP 7.0
> - SOLR: 6.2.1
>
> Solr is the indexer, however, in the liferay control panel I cannot see
> the users and organization and therefore I cannot assign permissions and
> roles either.
>
> Reviewing the liferay logs I see the following message:
>
> org.apache.solr.common.SolrException: org.apache.solr.search.SyntaxError:
> Cannot parse '+(+((+entryClassName:com.liferay.portal.kernel.model.User
> +status:5)) +(+())) +(companyId:20116)': Encountered " ")" ") "" at line 1,
> column 74.
> Was expecting one of:
>     <NOT> ...
>     "+" ...
>     "-" ...
>     <BAREOPER> ...
>     "(" ...
>     "*" ...
>     <QUOTED> ...
>     <TERM> ...
>     <PREFIXTERM> ...
>     <WILDTERM> ...
>     <REGEXPTERM> ...
>     "[" ...
>     "{" ...
>     <LPARAMS> ...
>     "filter(" ...
>     <NUMBER> ...
>     <TERM> ...
>     "*" ...
>
>       at
> org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:218)
>       at
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:269)
>       at
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:154)
>       at org.apache.solr.core.SolrCore.execute(SolrCore.java:2089)
>       at
> org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:652)
>       at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:459)
>       at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:257)
>       at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:208)
>       at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)
>       at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581)
>       at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>       at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
>       at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>       at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1160)
>       at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
>       at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>       at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1092)
>       at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>       at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
>       at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
>       at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>       at org.eclipse.jetty.server.Server.handle(Server.java:518)
>       at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:308)
>       at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:244)
>       at org.eclipse.jetty.io
> .AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
>       at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>       at org.eclipse.jetty.io
> .SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
>       at
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:246)
>       at
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:156)
>       at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
>       at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>       at java.lang.Thread.run(Thread.java:748)
> Caused by: org.apache.solr.search.SyntaxError: Cannot parse
> '+(+((+entryClassName:com.liferay.portal.kernel.model.User +status:5))
> +(+())) +(companyId:20116)': Encountered " ")" ") "" at line 1, column 74.
> Was expecting one of:
>     <NOT> ...
>     "+" ...
>     "-" ...
>     <BAREOPER> ...
>     "(" ...
>     "*" ...
>     <QUOTED> ...
>     <TERM> ...
>     <PREFIXTERM> ...
>     <WILDTERM> ...
>     <REGEXPTERM> ...
>     "[" ...
>     "{" ...
>     <LPARAMS> ...
>     "filter(" ...
>     <NUMBER> ...
>     <TERM> ...
>     "*" ...
>
>       at
> org.apache.solr.parser.SolrQueryParserBase.parse(SolrQueryParserBase.java:156)
>       at org.apache.solr.search.LuceneQParser.parse(LuceneQParser.java:50)
>       at org.apache.solr.search.QParser.getQuery(QParser.java:140)
>       at
> org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:207)
>       ... 31 more
> Caused by: org.apache.solr.parser.ParseException: Encountered " ")" ") ""
> at line 1, column 74.
> Was expecting one of:
>     <NOT> ...
>     "+" ...
>     "-" ...
>     <BAREOPER> ...
>     "(" ...
>     "*" ...
>     <QUOTED> ...
>     <TERM> ...
>     <PREFIXTERM> ...
>     <WILDTERM> ...
>     <REGEXPTERM> ...
>     "[" ...
>     "{" ...
>     <LPARAMS> ...
>     "filter(" ...
>     <NUMBER> ...
>     <TERM> ...
>     "*" ...
>
>       at
> org.apache.solr.parser.QueryParser.generateParseException(QueryParser.java:659)
>       at
> org.apache.solr.parser.QueryParser.jj_consume_token(QueryParser.java:541)
>       at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:226)
>       at org.apache.solr.parser.QueryParser.Query(QueryParser.java:101)
>       at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:184)
>       at org.apache.solr.parser.QueryParser.Query(QueryParser.java:101)
>       at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:184)
>       at org.apache.solr.parser.QueryParser.Query(QueryParser.java:134)
>       at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:184)
>       at org.apache.solr.parser.QueryParser.Query(QueryParser.java:101)
>       at
> org.apache.solr.parser.QueryParser.TopLevelQuery(QueryParser.java:90)
>       at
> org.apache.solr.parser.SolrQueryParserBase.parse(SolrQueryParserBase.java:152)
>       ... 34 more
>
> Does anyone know what this behavior is due to?
>
> I thank you in advance for your attention
> Greetings
>
> Félix Celaya
>
>
>

Reply via email to