Hi Greg,

Thanks for your questions (copying the dev@ list per our discussion).
My replies inline below:

-----Original Message-----

From: Greg Earle <ea...@mipl.jpl.nasa.gov>
Date: Wednesday, June 19, 2013 10:55 PM
To: jpluser <chris.a.mattm...@jpl.nasa.gov>
Cc: Greg Earle <ea...@mipl.jpl.nasa.gov>, "Lee, Hyun H (398J)"
<hyun....@jpl.nasa.gov>
Subject: OODT build issues (Fwd: APPS Third-party (TPS) software component
list)

>Hi Chris (and Hyun),
>
>I was asked by Costin Radulescu to install Apache OODT on one of our
>Dev systems.  It's a Linux box running 64-bit Red Hat RHEL 6.3.
>
>He had sent me a TPS request (formalized form we use in MIPL) asking
>for the "Latest" version, but later on sent an Excel spreadsheet that
>specifically mentioned version 0.3.  (But I think that was only because
>he made up the spreadsheet some months back.)

Yep latest version is 0.6-SNAPSHOT (trunk). Should be released in the
next week or so, but it's fairly stable right now. I'm going to RM it.

>
>I first tried using Maven 3.0.1 but it splatted all over the place.

0.3 will do that to you since we didn't support Maven3 until OODT-369 [1]
which will ship in 0.6 (and is available now in trunk/0.6-SNAPSHOT).


>I fell back to Maven 2.2.1 which seemed to make OODT a lot happier.

Heh, yep.

>
>Anyway, I was able to build 0.3 OK; but then I thought I should try to
>build the latest & greatest 0.5.  The following message chronicles the
>2 major problems I ran into (in copious detail - sorry) with both 0.5
>and 0.4 (which I tried after 0.5 failed).  Executive summary:
>
>(1) Catalog and Archive Service Generic Multi-valued Metadata Container
>
>    A couple of the tests seem to have a race condition where they try to
>    clean up their mess and remove a temporary metadata .tests directory
>    before all the files are completely removed (NFS issue; possibly due
>    to caching/sync), provoking 2 ENOTEMPTY errors.

Yep this is an NFS issue -- you can always change this with a
java.io.tmpDir
property (passed to Maven with mvn
-Djava.io.tmpDir=/some/where/not/on/nfs).
Issue described in detail here:

https://issues.apache.org/jira/browse/OODT-110


>
>(2) CAS Protocol SFTP Implementation
>
>    The "TestJschSftpProtocol" test is failing because it can't contact
>    whatever server it is trying to contact ("Connection refused").

Odd, it should be trying to connect locally.

>
>If you could give a quick glance-over to this (overly verbose, sorry)
>transcript and suggest anything (like resources to consult) that would
>help me potentially get past these 2 issues, I'd appreciate it.

No worries -- if you get failing tests like the above and they are blocking
progress you can always type mvn -Dmaven.skip.tests=true install and then
that should get you past.

>
>In the meantime I'm going to ask Costin if he can get along with using
>version 0.3 in the interim.

Try 0.6-SNAPSHOT -- should work better :)

Also happy to answer any further questions here on list. Cheers!

Chris

[1] https://issues.apache.org/jira/browse/OODT-369

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Chris Mattmann, Ph.D.
Senior Computer Scientist
NASA Jet Propulsion Laboratory Pasadena, CA 91109 USA
Office: 171-266B, Mailstop: 171-246
Email: chris.a.mattm...@nasa.gov
WWW:  http://sunset.usc.edu/~mattmann/
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adjunct Assistant Professor, Computer Science Department
University of Southern California, Los Angeles, CA 90089 USA
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



>
>Begin forwarded message:
>
>> From: Greg Earle <ea...@mipl.jpl.nasa.gov>
>> Date: June 19, 2013 10:28:57 PM PDT
>> To: Costin Radulescu <crad...@jpl.nasa.gov>, "Levoe, Steven R (398D)"
>><steven.r.le...@jpl.nasa.gov>
>> Cc: Alex Leung <alex.le...@jpl.nasa.gov>, Greg Earle
>><ea...@mipl.jpl.nasa.gov>
>> Subject: Re: APPS Third-party (TPS) software component list
>> content-type: text/plain; charset=us-ascii
>> 
>> On Jun 19, 2013, at 5:17 PM, Greg Earle wrote:
>> 
>>> I installed the "apache-oodt-0.3-src.tar.gz" file into "external"
>>> because I think you said it had been donated(?) to The Apache
>>>Foundation
>>> and thus was no longer JPL/NASA Proprietary ... right?
>>> 
>>> I compared the Apache version to the old JPL one and the JPL one
>>> just has a "oodt.jar" file (with some docs) - but the Apache one
>>> looks like it's a zillion ".java" files that need to be built with
>>> Maven, which isn't installed yet.
>> 
>> [Removed Janet from the long boring technical discussion.  Sorry Janet.]
>> 
>> Update:
>> 
>> OK - so I found a Maven RPM
>>(apache-maven-3.0.3-1.el6.sroycode.noarch.rpm)
>> and installed it.
>> 
>> The README.txt file in the OODT 0.3 "src" directory says to just run
>> "mvn install" to build it.  I tried that but it croaked.
>> 
>> Then I looked in the README.txt file again and it says it uses Maven2.
>> 
>> So I installed Maven 2.2.1 instead (into externals, alongside
>>apache-oodt -
>> no RPM for it that I could find which didn't have a ton of dependencies)
>> and this time it built all the way through; albeit with a bunch of
>> "WARNING" messages.
>> 
>> It looks like it built a bunch of .jar files, rather than a single
>> "oodt.jar" file like back in the pre-Apache, JPL days.  To compare:
>> 
>> --
>> [root@miplapps2 v0.3]# pwd
>> /usr/local/vicar/external/apache-oodt/v0.3
>> 
>> [root@miplapps2 v0.3]# ls -1lF */target/*.jar
>> -rw-r--r-- 1 cmbld cm 235380 Jun 19 17:57
>>catalog/target/cas-catalog-0.3.jar
>> -rw-r--r-- 1 cmbld cm 219372 Jun 19 17:55
>>commons/target/oodt-commons-0.3.jar
>> -rw-r--r-- 1 cmbld cm  65682 Jun 19 17:58
>>crawler/target/cas-crawler-0.3.jar
>> -rw-r--r-- 1 cmbld cm 463421 Jun 19 17:57
>>filemgr/target/cas-filemgr-0.3.jar
>> -rw-r--r-- 1 cmbld cm  65707 Jun 19 17:56
>>metadata/target/cas-metadata-0.3.jar
>> -rw-r--r-- 1 cmbld cm  37947 Jun 19 18:00
>>opendapps/target/opendapps-0.3.jar
>> -rw-r--r-- 1 cmbld cm  49859 Jun 19 17:59 pge/target/cas-pge-0.3.jar
>> -rw-r--r-- 1 cmbld cm  42226 Jun 19 18:00
>>product/target/oodt-product-0.3.jar
>> -rw-r--r-- 1 cmbld cm  97752 Jun 19 18:00
>>profile/target/oodt-profile-0.3.jar
>> -rw-r--r-- 1 cmbld cm 257273 Jun 19 18:00
>>pushpull/target/cas-pushpull-0.3.jar
>> -rw-r--r-- 1 cmbld cm 104657 Jun 19 17:57
>>resource/target/cas-resource-0.3.jar
>> -rw-r--r-- 1 cmbld cm  10788 Jun 19 17:56 sso/target/oodt-sso-0.3.jar
>> -rw-r--r-- 1 cmbld cm 172360 Jun 19 17:58
>>workflow/target/cas-workflow-0.3.jar
>> -rw-r--r-- 1 cmbld cm  57928 Jun 19 18:00
>>xmlps/target/oodt-xmlps-0.3.jar
>> -rw-r--r-- 1 cmbld cm  52906 Jun 19 17:56
>>xmlquery/target/oodt-xmlquery-0.3.jar
>> 
>> [root@miplapps2 v1.1.0]# pwd
>> /usr/local/vicar/proprietary/oodt/v1.1.0
>> 
>> [root@miplapps2 v1.1.0]# ls -1lF `find . -name \*.jar -print`
>> -rw-rw-r-- 1 1662 dev 262796 Jun 19  2000 ./lib/oodt.jar
>> --
>> 
>> I hope you can find what you're looking for amongst all those JAR files.
>> 
>> --
>> 
>> BTW Costin, I noticed in your original TPS request, you asked for the
>> "Latest" version of OODT.  But in your Excel spreadsheet you forwarded
>> to me, you specified version 0.3.  (The current version is 0.5.)
>> 
>> So I tried to build 0.5 but it failed.  Then I downloaded 0.4 and tried
>> to build that version; it also failed.
>> 
>> Can we get by with 0.3?
>> 
>>      - Greg
>> 
>> P.S. The tediously long analysis of the 0.4/0.5 build failure messages:
>> 
>> --
>> [INFO] 
>>------------------------------------------------------------------------
>> [INFO] Building Catalog and Archive Service Generic Multi-valued
>>Metadata Container
>> [INFO]    task-segment: [install]
>> [INFO] 
>>------------------------------------------------------------------------
>> [...]
>> 
>> -------------------------------------------------------
>> T E S T S
>> -------------------------------------------------------
>> Running org.apache.oodt.cas.metadata.TestMetadata
>> Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 sec
>> [...]
>> Running 
>>org.apache.oodt.cas.metadata.extractors.TestCopyAndRewriteExtractor
>> Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 0.053
>>sec <<< FAILURE!
>> [...]
>> 
>> Results :
>> 
>> Tests in error: 
>>  
>>testExtractMetadata(org.apache.oodt.cas.metadata.extractors.TestCopyAndRe
>>writeExtractor): Cannot delete temporary directory
>>/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/metadata6477
>>311802555701610.tests
>>  
>>testReplaceOrigMetFilePath(org.apache.oodt.cas.metadata.extractors.TestCo
>>pyAndRewriteExtractor): Cannot delete temporary directory
>>/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/metadata6208
>>598354758363243.tests
>> 
>> Tests run: 20, Failures: 0, Errors: 2, Skipped: 0
>> 
>> [INFO] 
>>------------------------------------------------------------------------
>> [ERROR] BUILD FAILURE
>> [INFO] 
>>------------------------------------------------------------------------
>> [INFO] There are test failures.
>> 
>> Please refer to 
>>/pkg/vicar/external/apache-oodt/v0.4/metadata/target/surefire-reports
>>for the individual test results.
>> --
>> 
>> I don't know why it can't delete these temporary directories.  I am
>>running
>> as "root"!
>> 
>> The stack traceback of the failed test was
>> 
>> --
>> 
>>testExtractMetadata(org.apache.oodt.cas.metadata.extractors.TestCopyAndRe
>>writeExtractor)  Time elapsed: 0.046 sec  <<< ERROR!
>> java.io.IOException: Cannot delete temporary directory
>>/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/metadata3611
>>359663504997822.tests
>>      at 
>>org.apache.oodt.cas.metadata.MetadataTestCase.tearDown(MetadataTestCase.j
>>ava:75)
>>      at 
>>org.apache.oodt.cas.metadata.extractors.TestCopyAndRewriteExtractor.tearD
>>own(TestCopyAndRewriteExtractor.java:151)
>> [...]
>> 
>> and
>> 
>> 
>>testReplaceOrigMetFilePath(org.apache.oodt.cas.metadata.extractors.TestCo
>>pyAndRewriteExtractor)  Time elapsed: 0.025 sec  <<< ERROR!
>> java.io.IOException: Cannot delete temporary directory
>>/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/metadata4674
>>468323809077561.tests
>>      at 
>>org.apache.oodt.cas.metadata.MetadataTestCase.tearDown(MetadataTestCase.j
>>ava:75)
>>      at 
>>org.apache.oodt.cas.metadata.extractors.TestCopyAndRewriteExtractor.tearD
>>own(TestCopyAndRewriteExtractor.java:151)
>> [...]
>> --
>> 
>> "MetadataTestCase.java:75" is
>> 
>> 
>>http://oodt.apache.org/components/maven/xref-test/org/apache/oodt/cas/met
>>adata/MetadataTestCase.html
>> 
>> --
>>        if (!tmpDir.delete())
>>                   // Nuke the play area
>>            throw new IOException("Cannot delete temporary directory " +
>>tmpDir);         
>> --
>> 
>> I ran it under "strace" and I see things like
>> 
>> --
>> 31222 
>>unlink("/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/meta
>>data7770994790488970829.tests") = -1 EISDIR (Is a directory)
>> 31222 
>>unlink("/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/meta
>>data5397511724788750068.tests/samplemet.xml" <unfinished ...>
>> 31222 
>>unlink("/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/meta
>>data5397511724788750068.tests") = -1 EISDIR (Is a directory)
>> 31222 
>>rmdir("/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/metad
>>ata5397511724788750068.tests") = -1 ENOTEMPTY (Directory not empty)
>> 31222 
>> 
>> 
>>unlink("/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/meta
>>data8856046235876187471.tests") = -1 EISDIR (Is a directory)
>> 31222 
>>rmdir("/pkg/vicar/external/apache-oodt/v0.4/metadata/target/classes/metad
>>ata8856046235876187471.tests") = -1 ENOTEMPTY (Directory not empty)
>> 31222
>> --
>> 
>> So for some reason the directory isn't completely empty when it goes to
>> delete it in each of the 2 failing tests.  I don't really have any ideas
>> at this point.  I believe it is an NFS issue of some sort, because ...
>> 
>> ... I then tried to build both 0.4 and 0.5 in a local (non-NFS)
>>directory,
>> under "/var" - and they both failed in a completely different way - an
>>SFTP
>> test harness that fails due to "Connection refused":
>> 
>> --
>> [...]
>> 
>>-------------------------------------------------------------------------
>>------
>> Test set: org.apache.oodt.cas.protocol.sftp.TestJschSftpProtocol
>> 
>>-------------------------------------------------------------------------
>>------
>> Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.766
>>sec <<< FAILURE!
>> testGET(org.apache.oodt.cas.protocol.sftp.TestJschSftpProtocol)  Time
>>elapsed: 0.01 sec  <<< ERROR!
>> org.apache.oodt.cas.protocol.exceptions.ProtocolException: Failed to
>>connect to host localhost : java.net.ConnectException: Connection refused
>>      at 
>>org.apache.oodt.cas.protocol.sftp.JschSftpProtocol.connect(JschSftpProtoc
>>ol.java:119)
>>      at 
>>org.apache.oodt.cas.protocol.sftp.TestJschSftpProtocol.testGET(TestJschSf
>>tpProtocol.java:122)
>> Caused by: com.jcraft.jsch.JSchException: java.net.ConnectException:
>>Connection refused
>>      at com.jcraft.jsch.Util.createSocket(Util.java:341)
>>      at com.jcraft.jsch.Session.connect(Session.java:182)
>>      at com.jcraft.jsch.Session.connect(Session.java:150)
>>      at 
>>org.apache.oodt.cas.protocol.sftp.JschSftpProtocol.connect(JschSftpProtoc
>>ol.java:114)
>> --
>> 
>> The fact that neither fails on the ENOTEMPTY error tells me that it was
>>an
>> NFS problem when I built them out of the VICAR external tree.  But in
>>any
>> case, even if I could solve that one, now this SFTP issue has come
>>along.
>> 
>> The reason why 0.3 does not have this problem btw is because the
>>"protocol"
>> stuff (an API, with ftp/http/imaps/sftp support) is new starting with
>>0.4.
>> 
>> At this point I'm inclined to give up on 0.4/0.5 unless absolutely
>>needed.
>> 
>>      - Greg
>> 
>

Reply via email to