Erros no Solr - Excesso de erros nos logs

Bom dia, no log do fluig está registrando diversos erros referente ao solr.

Alguém sabe o que pode ser, ou como desativar os logs dele? Aparentemente está tudo funcionando, mas o log está gigante e cheio de "lixo". Abaixo segue um trecho dos logs e print do solr


19/07/2018 07:35:32

ERROR true


RequestHandlerBase

org.apache.solr.common.SolrException: Exception writing document id FORM11833 to the index; possible analysis error.

org.apache.solr.common.SolrException: Exception writing document id FORM11833 to the index; possible analysis error.

    at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:233)

    at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:67)

    at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55)

    at org.apache.solr.update.processor.DistributedUpdateProcessor.doLocalAdd(DistributedUpdateProcessor.java:910)

    at org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1121)

    at org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:616)

    at org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103)

    at org.apache.solr.handler.loader.JavabinLoader$1.update(JavabinLoader.java:98)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readOuterMostDocIterator(JavaBinUpdateRequestCodec.java:188)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readIterator(JavaBinUpdateRequestCodec.java:144)

    at org.apache.solr.common.util.JavaBinCodec.readObject(JavaBinCodec.java:311)

    at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:256)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readNamedList(JavaBinUpdateRequestCodec.java:130)

    at org.apache.solr.common.util.JavaBinCodec.readObject(JavaBinCodec.java:276)

    at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:256)

    at org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:178)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec.unmarshal(JavaBinUpdateRequestCodec.java:195)

    at org.apache.solr.handler.loader.JavabinLoader.parseAndLoadDocs(JavabinLoader.java:108)

    at org.apache.solr.handler.loader.JavabinLoader.load(JavabinLoader.java:55)

    at org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:97)

    at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:68)

    at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:177)

    at org.apache.solr.core.SolrCore.execute(SolrCore.java:2503)

    at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:710)

    at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:516)

    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:382)

    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:326)

    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1751)

    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)

    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:1180)

    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)

    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)

    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)

    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.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)

    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)

    at org.eclipse.jetty.server.Server.handle(Server.java:534)

    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)

    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)

    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)

    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108)

    at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)

    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)

    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)

    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)

    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)

    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)

    at java.lang.Thread.run(Thread.java:745)

Caused by: org.apache.lucene.store.AlreadyClosedException: this IndexWriter is closed

    at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:897)

    at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:911)

    at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1725)

    at org.apache.solr.update.DirectUpdateHandler2.updateDocument(DirectUpdateHandler2.java:965)

    at org.apache.solr.update.DirectUpdateHandler2.updateDocOrDocValues(DirectUpdateHandler2.java:954)

    at org.apache.solr.update.DirectUpdateHandler2.doNormalUpdate(DirectUpdateHandler2.java:334)

    at org.apache.solr.update.DirectUpdateHandler2.addDoc0(DirectUpdateHandler2.java:271)

    at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:221)

    ... 53 more

Caused by: java.lang.OutOfMemoryError: Java heap space

    at org.apache.lucene.index.DocsWithFieldSet.add(DocsWithFieldSet.java:44)

    at org.apache.lucene.index.NormValuesWriter.addValue(NormValuesWriter.java:55)

    at org.apache.lucene.index.DefaultIndexingChain$PerField.finish(DefaultIndexingChain.java:697)

    at org.apache.lucene.index.DefaultIndexingChain.processDocument(DefaultIndexingChain.java:401)

    at org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(DocumentsWriterPerThread.java:240)

    at org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter.java:496)

    at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1729)

    at org.apache.solr.update.DirectUpdateHandler2.updateDocument(DirectUpdateHandler2.java:965)

    at org.apache.solr.update.DirectUpdateHandler2.updateDocOrDocValues(DirectUpdateHandler2.java:954)

    at org.apache.solr.update.DirectUpdateHandler2.doNormalUpdate(DirectUpdateHandler2.java:334)

    at org.apache.solr.update.DirectUpdateHandler2.addDoc0(DirectUpdateHandler2.java:271)

    at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:221)

    at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:67)

    at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55)

    at org.apache.solr.update.processor.DistributedUpdateProcessor.doLocalAdd(DistributedUpdateProcessor.java:910)

    at org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1121)

    at org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:616)

    at org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103)

    at org.apache.solr.handler.loader.JavabinLoader$1.update(JavabinLoader.java:98)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readOuterMostDocIterator(JavaBinUpdateRequestCodec.java:188)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readIterator(JavaBinUpdateRequestCodec.java:144)

    at org.apache.solr.common.util.JavaBinCodec.readObject(JavaBinCodec.java:311)

    at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:256)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readNamedList(JavaBinUpdateRequestCodec.java:130)

    at org.apache.solr.common.util.JavaBinCodec.readObject(JavaBinCodec.java:276)

    at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:256)

    at org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:178)

    at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec.unmarshal(JavaBinUpdateRequestCodec.java:195)

    at org.apache.solr.handler.loader.JavabinLoader.parseAndLoadDocs(JavabinLoader.java:108)

    at org.apache.solr.handler.loader.JavabinLoader.load(JavabinLoader.java:55)

    at org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:97)

    at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:68)

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

Oi William,

Creio que estes erros estão ocorrendo pois o Solr não está conseguindo alocar mais memória para fazer a indexação:


Caused by: java.lang.OutOfMemoryError: Java heap space

Para resolver isso existem vários fatores que precisam ser analisados:

  • Quando ocorre? Sempre? É intermitente?
    • Existe alguma publicação em massa de conteúdo em determinado período do dia?
    • O servidor está de acordo com o dimensionamento fluig?
    • Quando utilizado Solr em servidor remoto: não existe outra aplicação concorrendo com o serviço do Solr?
    • O Solr está dimensionado de acordo com o volume de conteúdo publicado no fluig? Ex.: será que não é interessante o uso de Solr em alta disponibilidade/cluster?

Com esse problema de memória, creio que você pode enfrentar problemas: determinado conteúdo você consegue localizar na busca, outros não. O ideal é que, após a questão de memória do serviço do Solr seja resolvido, seja executada uma indexação completa do fluig, para garantir que todo o conteúdo foi indexado corretamente.

Caso você precise de apoio para fazer a avaliação dos itens acima, creio que você pode entrar em contato com o Suporte fluig. Eles lhe orientarão como proceder com a análise do ambiente.

Abs,

Marcos

Bom dia Marcos!

Então, não temos nada que faz publicação automática e nem gera grande quantidade de dados.
O problema acontece direto, durante o dia são vários erros no log com a mesma informação.

Temos um servidor apenas para o fluig, e todos os serviços estão instalados no mesmo servidor, não temos alta disponibilidade/ou separação de serviços em servidores diferentes.

O que você me sugere?

Outra coisa que notei, é que o erro sempre aparece referenciando "document id FORM11883 "

org.apache.solr.common.SolrException: Exception writing document id FORM11883 to the index; possible analysis error.

William, minha sugestão seria avaliar o dimensionamento da máquina. Aparentemente não está correto (analisando de maneira rápida), pois em uma instalação em um único servidor as configurações já atenderiam. Porém, você pode solicitar para o Suporte fluig a documentação de como realizar um tuning de memória nas configurações do Solr. Pesquisei rapidamente e não localizei esta documentação.
Sobre o erro “document id FORM11883” provavelmente é devido ao problema de memória, pois o Solr fica instável por não conseguir alocar os recursos necessários para seu funcionamento. Abs!