manifoldcf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Thomas (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CONNECTORS-1512) Documentum Connector throws NPE when a job is run after a document is deleted from the repository
Date Mon, 02 Jul 2018 20:08:00 GMT

    [ https://issues.apache.org/jira/browse/CONNECTORS-1512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16530388#comment-16530388
] 

James Thomas commented on CONNECTORS-1512:
------------------------------------------

You were right about line endings. I ran dos2unix on the two files that you edited and was
then able to patch and build.

These are the changed files (where dist.vanilla is the 2.10 build without the patch):

{code:java}
$ diff -r dist dist.vanilla/
Binary files dist/connector-lib/mcf-documentum-connector.jar and dist.vanilla/connector-lib/mcf-documentum-connector.jar
differ
Binary files dist/connector-lib/mcf-documentum-connector-rmistub.jar and dist.vanilla/connector-lib/mcf-documentum-connector-rmistub.jar
differ
Binary files dist/connector-lib/mcf-filenet-connector-rmistub.jar and dist.vanilla/connector-lib/mcf-filenet-connector-rmistub.jar
differ
Binary files dist/connector-lib/mcf-meridio-connector.jar and dist.vanilla/connector-lib/mcf-meridio-connector.jar
differ
Binary files dist/connector-lib/mcf-sharepoint-connector.jar and dist.vanilla/connector-lib/mcf-sharepoint-connector.jar
differ
Binary files dist/processes/documentum-server/lib/mcf-documentum-connector-implementation.jar
and dist.vanilla/processes/documentum-server/lib/mcf-documentum-connector-implementation.jar
differ
Binary files dist/processes/documentum-server/lib/mcf-documentum-connector-rmiskel.jar and
dist.vanilla/processes/documentum-server/lib/mcf-documentum-connector-rmiskel.jar differ
Binary files dist/processes/filenet-server/lib/mcf-filenet-connector-rmiskel.jar and dist.vanilla/processes/filenet-server/lib/mcf-filenet-connector-rmiskel.jar
differ
Binary files dist/web/war/mcf-crawler-ui.war and dist.vanilla/web/war/mcf-crawler-ui.war differ
Binary files dist/web-proprietary/war/mcf-crawler-ui.war and dist.vanilla/web-proprietary/war/mcf-crawler-ui.war
differ
{code}

I zipped up these files and deployed them into a copy of my 2.10 instance, removed the dbname
files (to clear any bad history) and restarted Manfiold and the Documentum connector servers.

I re-ran my repro steps and am still seeing an NPE at the same lines in DocumentumObjectImpl.java,
DCTM.java at the same point:

{code:java}
FATAL 2018-07-02T20:46:25,935 (Worker thread '13') - Error tossed: null
java.lang.NullPointerException
        at org.apache.manifoldcf.crawler.common.DCTM.DocumentumObjectImpl.getContentSize(DocumentumObjectImpl.java:181)
~[?:?]
...
        at org.apache.manifoldcf.crawler.connectors.DCTM.DCTM$ProcessDocumentThread.run(DCTM.java:1399)
~[?:?]
{code}

What information can I provide you with to help diagnose further or check my build?

For example, as a sanity check I can see that DocumentumtImpl.java is changed in the patched
deployment:

{code:java}
$ unzip -l apache-manifoldcf-2.10/processes/documentum-server/lib/mcf-documentum-connector-implementation.jar
Archive:  apache-manifoldcf-2.10/processes/documentum-server/lib/mcf-documentum-connector-implementation.jar
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  04-15-2018 11:43   META-INF/
      103  04-15-2018 11:43   META-INF/MANIFEST.MF
        0  04-15-2018 11:43   org/
        0  04-15-2018 11:43   org/apache/
        0  04-15-2018 11:43   org/apache/manifoldcf/
        0  04-15-2018 11:43   org/apache/manifoldcf/crawler/
        0  04-15-2018 11:43   org/apache/manifoldcf/crawler/common/
        0  04-15-2018 11:43   org/apache/manifoldcf/crawler/common/DCTM/
     1126  04-15-2018 11:43   org/apache/manifoldcf/crawler/common/DCTM/DocumentumFactoryImpl.class
    10676  04-15-2018 11:43   org/apache/manifoldcf/crawler/common/DCTM/DocumentumImpl.class
     9555  04-15-2018 11:43   org/apache/manifoldcf/crawler/common/DCTM/DocumentumObjectImpl.class
     2487  04-15-2018 11:43   org/apache/manifoldcf/crawler/common/DCTM/DocumentumResultImpl.class
---------                     -------
    23947                     12 files

$ unzip -l apache-manifoldcf-2.10_1512/processes/documentum-server/lib/mcf-documentum-connector-implementation.jar
Archive:  apache-manifoldcf-2.10_1512/processes/documentum-server/lib/mcf-documentum-connector-implementation.jar
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  07-02-2018 10:25   META-INF/
      105  07-02-2018 10:25   META-INF/MANIFEST.MF
        0  07-01-2018 11:15   org/
        0  07-01-2018 11:15   org/apache/
        0  07-01-2018 11:15   org/apache/manifoldcf/
        0  07-01-2018 11:15   org/apache/manifoldcf/crawler/
        0  07-01-2018 11:15   org/apache/manifoldcf/crawler/common/
        0  07-01-2018 11:15   org/apache/manifoldcf/crawler/common/DCTM/
     1126  07-01-2018 11:15   org/apache/manifoldcf/crawler/common/DCTM/DocumentumFactoryImpl.class
    10858  07-02-2018 10:25   org/apache/manifoldcf/crawler/common/DCTM/DocumentumImpl.class
     9555  07-01-2018 11:15   org/apache/manifoldcf/crawler/common/DCTM/DocumentumObjectImpl.class
     2487  07-01-2018 11:15   org/apache/manifoldcf/crawler/common/DCTM/DocumentumResultImpl.class
---------                     -------
    24131                     12 files
{code}


> Documentum Connector throws NPE when a job is run after a document is deleted from the
repository
> -------------------------------------------------------------------------------------------------
>
>                 Key: CONNECTORS-1512
>                 URL: https://issues.apache.org/jira/browse/CONNECTORS-1512
>             Project: ManifoldCF
>          Issue Type: Bug
>          Components: Documentum connector
>    Affects Versions: ManifoldCF 2.8.1, ManifoldCF 2.10
>         Environment: Documentum 16.4
> Manifold 2.10, using dfc jars 16.4
> Manifold server machine details (although also seen on a Windows-based MF 2.8.1):
> {code:java}
> $ hostnamectl
>  ...
> Chassis: vm
> Virtualization: kvm
> Operating System: CentOS Linux 7 (Core)
> CPE OS Name: cpe:/o:centos:centos:7
> Kernel: Linux 3.10.0-862.2.3.el7.x86_64
>  Architecture: x86-64
> $ java -version
> openjdk version "1.8.0_171"
> OpenJDK Runtime Environment (build 1.8.0_171-b10)
> OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode)
> {code}
> I have the following entry in properties.xml for verbose logging from connectors:
> {code:java}
> <property name="org.apache.manifoldcf.connectors" value="DEBUG"/>
> {code}
>            Reporter: James Thomas
>            Assignee: Karl Wright
>            Priority: Major
>             Fix For: ManifoldCF 2.11
>
>         Attachments: CONNECTORS-1512.patch, repro_delete.log
>
>
> I see an NPE from the Documentum Connector when I re-run a job after deleting a file
from the Documentum repository using the Documentum Administrator:
> {code:java}
> FATAL 2018-06-29T08:36:54,847 (Worker thread '5') - Error tossed: null
> java.lang.NullPointerException
>         at org.apache.manifoldcf.crawler.common.DCTM.DocumentumObjectImpl.getContentSize(DocumentumObjectImpl.java:181)
~[?:?]
>     ...
>   at org.apache.manifoldcf.crawler.connectors.DCTM.DCTM$ProcessDocumentThread.run(DCTM.java:1399)
~[?:?]
> {code}
> The job then appears not to terminate in the Manifold UI.  If the job is not aborted,
the NPE will show again after restarting the Manifold server and Documentum Connectors.
> I expect the connectors to handle deletion of source in the repository, passing the appropriate
status to the output connector, and not failing like this.
> Reproduce:
> * Configure Manifold to use Documentum Connectors to talk to a Documentum instance
> * Sanity check your configuration by 
> ** create a directory in Documentum, D, with two files F, G
> ** create a job in Manifold to take from D and write to the file system in directory
L
> ** run the job and observe that F, G appear in L
> * delete G from D in Documentum 
> ** in Documentum Administrator, right click on G and choose Delete, then OK
> * re-run your job
> * observe that the job doesn't end
> * inspect L 
> * observe that F and G are both still present
> * inspect the Manifold logs
> * observe NPE in the logs
>  
> In the log file I'll attach,  F and G are Book1.xlsx and Book1.xls



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message