Hi Rafa,
In that case, I think you are passing in a document identifier that is not
one that was given to you by the processDocuments() invocation.
Essentially, there's a hash table and it's trying to look up the
corresponding record, and it's null.
You can confirm this by modifying line 2147 of WorkerThread, which reads:
return new
PipelineSpecificationWithVersions(pipelineSpecification,previousDocuments.get(documentIdentifierHash),componentIdentifierHash);
... adding in debugging code to throw an IllegalArgumentException when
previousDocuments.get(documentIdentifierHash) is null:
if (previousDocuments.get(documentIdentifierHash) == null)
throw new IllegalArgumentException("Unrecognized document identifier");
Karl
On Mon, Aug 4, 2014 at 1:54 PM, Rafa Haro <[email protected]> wrote:
> Hi Karl,
>
> Thanks for your quick response as always ;-). I have updated my local copy
> today and made a clean build. Anyway, I will check the revision to ensure I
> have those changes, but I'm almost sure I'm on last version of the trunk.
>
> Thanks,
> Rafa
>
> On Monday, August 4, 2014, Karl Wright <[email protected]> wrote:
>
> > Hi Rafa,
> >
> > I fixed a bug in this method not long ago (r1612102). Have you svn
> updated
> > lately?
> >
> > Karl
> >
> >
> >
> > On Mon, Aug 4, 2014 at 1:06 PM, Rafa Haro <[email protected]
> <javascript:;>>
> > wrote:
> >
> > > Hi devs,
> > >
> > > I’m testing a new connector and I’m continuously getting a Null Pointer
> > > Exception in the same class. The whole trace inside Manifold is the
> > > following:
> > >
> > > at
> > >
> >
> org.apache.manifoldcf.crawler.system.PipelineSpecificationWithVersions.getStatus(PipelineSpecificationWithVersions.java:53)
> > > at
> > >
> >
> org.apache.manifoldcf.crawler.system.PipelineSpecificationWithVersions.getOutputDocumentVersionString(PipelineSpecificationWithVersions.java:66)
> > > at
> > >
> >
> org.apache.manifoldcf.agents.incrementalingest.IncrementalIngester$PipelineObjectWithVersions.buildAddPipeline(IncrementalIngester.java:2746)
> > > at
> > >
> >
> org.apache.manifoldcf.agents.incrementalingest.IncrementalIngester$PipelineObjectWithVersions.addOrReplaceDocumentWithException(IncrementalIngester.java:2711)
> > > at
> > >
> >
> org.apache.manifoldcf.agents.incrementalingest.IncrementalIngester.documentIngest(IncrementalIngester.java:781)
> > > at
> > >
> >
> org.apache.manifoldcf.crawler.system.WorkerThread$ProcessActivity.ingestDocumentWithException(WorkerThread.java:1600)
> > > at
> > >
> >
> org.apache.manifoldcf.crawler.system.WorkerThread$ProcessActivity.ingestDocumentWithException(WorkerThread.java:1554)
> > >
> > > The call to the ingestDocumentWithException method is correct and all
> the
> > > parameters are not null and well formed:
> > >
> > > activities.ingestDocumentWithException(String.valueOf(uuid), "", uuid,
> > rd);
> > >
> > > The version of the document is intentionally empty. Any clue about how
> > > could this happening?
> > >
> > > Thanks,
> > > Rafa
> >
>