It looks as though you're adding a null SolrInputDocument to your UpdateRequest somehow? The bit that's throwing a NPE is iterating through the documents in order to route things correctly (UpdateRequest.java:204).
Alan Woodward www.flax.co.uk On 23 Oct 2015, at 13:53, Markus Jelsma wrote: > Ah yes, i think i overlooked that one. Here it is: > > <error message="java.lang.NullPointerException" > type="org.apache.solr.client.solrj.SolrServerException">org.apache.solr.client.solrj.SolrServerException: > java.lang.NullPointerException > at > __randomizedtesting.SeedInfo.seed([C5A84EC72B29125E:BA7A28521E031EEB]:0) > at > org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:948) > at > org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:799) > at > org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:135) > at > org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:152) > at > io.openindex.solr.TestCompilerBase.indexDocs(TestCompilerBase.java:264) > at > io.openindex.solr.TestCompilerBase.indexRealLogs(TestCompilerBase.java:224) > at > io.openindex.solr.related.TestRelatedCompiler.testBasicRelations(TestRelatedCompiler.java:42) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:497) > at > com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1627) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:836) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:872) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:886) > at > org.apache.solr.BaseDistributedSearchTestCase$ShardsRepeatRule$ShardsFixedStatement.callStatement(BaseDistributedSearchTestCase.java:963) > at > org.apache.solr.BaseDistributedSearchTestCase$ShardsRepeatRule$ShardsStatement.evaluate(BaseDistributedSearchTestCase.java:938) > at > com.carrotsearch.randomizedtesting.rules.SystemPropertiesRestoreRule$1.evaluate(SystemPropertiesRestoreRule.java:57) > at > org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50) > at > org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:46) > at > org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:49) > at > org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:65) > at > org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48) > at > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:365) > at > com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:798) > at > com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:458) > at > com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:845) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:747) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:781) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:792) > at > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > com.carrotsearch.randomizedtesting.rules.SystemPropertiesRestoreRule$1.evaluate(SystemPropertiesRestoreRule.java:57) > at > org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:46) > at > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:42) > at > com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39) > at > com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39) > at > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:54) > at > org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48) > at > org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:65) > at > org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:55) > at > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:365) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.NullPointerException > at > org.apache.solr.client.solrj.request.UpdateRequest.getRoutes(UpdateRequest.java:204) > at > org.apache.solr.client.solrj.impl.CloudSolrClient.directUpdate(CloudSolrClient.java:583) > at > org.apache.solr.client.solrj.impl.CloudSolrClient.sendRequest(CloudSolrClient.java:967) > at > org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:856) > ... 47 more > > I am puzzled, these are quite ordinary documents we're indexing, it trips > over the q9911555 document: > > [qtp1792405644-114] INFO org.apache.solr.update.processor.LogUpdateProcessor > - [collection1] webapp= path=/update params={wt=javabin&version=2} > {add=[q9911553 (1515826200349507584)]} 0 0 > [qtp301139233-79] INFO org.apache.solr.update.processor.LogUpdateProcessor - > [collection1] webapp= path=/update params={wt=javabin&version=2} > {add=[q9911554 (1515826200351604736)]} 0 0 > [qtp301139233-78] INFO org.apache.solr.update.processor.LogUpdateProcessor - > [collection1] webapp= path=/update params={wt=javabin&version=2} > {add=[q9911555 (1515826200354750464)]} 0 0 > [TEST-TestRelatedCompiler.testBasicRelations-seed#[C5A84EC72B29125E]] ERROR > org.apache.solr.client.solrj.impl.CloudSolrClient - Request to collection > collection1 failed due to (0) java.lang.NullPointerException, retry? 0 > [TEST-TestRelatedCompiler.testBasicRelations-seed#[C5A84EC72B29125E]] INFO > org.apache.solr.SolrTestCaseJ4 - ###Ending testBasicRelations > > It makes no sense to me, what am i doing wrong here? > > Thanks! > Markus > > -----Original message----- >> From:Alan Woodward <a...@flax.co.uk> >> Sent: Friday 23rd October 2015 14:16 >> To: solr-user@lucene.apache.org >> Subject: Re: NPE in CloudSolrClient via AbstractFullDistribZkTestBase >> >> The NPE is from another server (hence being wrapped in a >> SolrServerException), so the original issue *should* be being logged >> elsewhere - are there no errors earlier on in the log? >> >> Alan Woodward >> www.flax.co.uk >> >> >> On 23 Oct 2015, at 12:44, Markus Jelsma wrote: >> >>> Hi - anyone here to shed some light on the issue? >>> >>> Markus >>> >>> >>> >>> -----Original message----- >>>> From:Markus Jelsma <markus.jel...@openindex.io> >>>> Sent: Tuesday 20th October 2015 13:39 >>>> To: solr-user <solr-user@lucene.apache.org> >>>> Subject: NPE in CloudSolrClient via AbstractFullDistribZkTestBase >>>> >>>> Hi - we have some code inside a unit test, extending >>>> AbstractFullDistribZkTestBase. I am indexing thousands of documents as >>>> part of the test to getCommonCloudSolrClient(); Somewhere down the line it >>>> trips over a document. I've debugged inspected the bas document but cannot >>>> find anything wrong with it. The thrown exception is beyond unhelpful: >>>> >>>> <error message="java.lang.NullPointerException" >>>> type="org.apache.solr.client.solrj.SolrServerException">org.apache.solr.client.solrj.SolrServerException: >>>> java.lang.NullPointerException >>>> at >>>> __randomizedtesting.SeedInfo.seed([D78A66027B188E12:A85800974E3282A7]:0) >>>> at >>>> org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:948) >>>> at >>>> org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:799) >>>> at >>>> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:135) >>>> at >>>> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:152) >>>> >>>> These are the last lines including that document >>>> >>>> SolrInputDocument(fields: [id=q9911555, type=query, >>>> compound_sid=nl_44da5ce2766326cc_52303206, >>>> compound_dig=nl_44da5ce2766326cc_1282013516, filter=44da5ce2766326cc, >>>> uid=3141070978, sid=52303206, dig=1282013516, time=2014-10-08T16:51:06Z, >>>> query=Omeprazol, qtime=46, lang=nl, hits=46, engine=fake]) >>>> [qtp350954577-74] INFO org.apache.solr.update.processor.LogUpdateProcessor >>>> - [collection1] webapp= path=/update params={wt=javabin&version=2} >>>> {add=[q9911555 (1515548831923568640)]} 0 1 >>>> [TEST-TestRelatedCompiler.testBasicRelations-seed#[14DC4C771346037F]] >>>> ERROR org.apache.solr.client.solrj.impl.CloudSolrClient - Request to >>>> collection collection1 failed due to (0) java.lang.NullPointerException, >>>> retry? 0 >>>> >>>> Any ideas? >>>> >>>> Thanks, >>>> Markus >>>> >> >>