ngageoint / hootenanny-rpms

RPMs needed for a Hootenanny install
GNU General Public License v3.0
5 stars 4 forks source link

gdal executables being installed in incorrect location. #122

Closed sputnam closed 7 years ago

sputnam commented 7 years ago

Also here is the stack trace when attempting to upload a basemap image (Roman Colosseum). Looks like our GDAL upgrade has executables in /usr/bin instead of /usr/local/bin now. I don't know why the script being used has the path hardcoded (the GDAL executables are probably in the PATH in either case): https://github.com/ngageoint/hootenanny/blob/master/scripts/services/submakebasemaprastertotiles#L6

2017-02-28 21:05:07,425 WARN  CommandRunnerImpl:89 - Error executing: [bash, /var/lib/hootenanny/scripts/services/makebasemaprastertotiles.sh, upload/ccab2b3b-5d25-44f6-9ae7-27f5683a92be/RomanColosseum_WV2naturalcolor_clip.tif, RomCol, /var/lib/hootenanny/ingest/processed/BASEMAP, auto, /var/lib/hootenanny/ingest/upload/BASEMAP, 75a48bd4-4b77-449a-b706-fb3429426abe]
org.apache.commons.exec.ExecuteException: Process exited with an error: 10 (Exit value: 10)
at org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:404) ~[commons-exec-1.3.jar:1.3]
at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:166) ~[commons-exec-1.3.jar:1.3]
at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:153) ~[commons-exec-1.3.jar:1.3]
at hoot.services.nativeinterfaces.CommandRunnerImpl.exec(CommandRunnerImpl.java:80) [classes/:?]
at hoot.services.nativeinterfaces.ProcessStreamInterface.exec(ProcessStreamInterface.java:135) [classes/:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_111]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_111]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_111]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) [spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) [spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) [spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at com.sun.proxy.$Proxy38.exec(Unknown Source) [?:?]
at hoot.services.nativeinterfaces.JobExecutionManager.exec(JobExecutionManager.java:57) [classes/:?]
at hoot.services.nativeinterfaces.JobExecutionManager$$FastClassBySpringCGLIB$$ee2a09c3.invoke(<generated>) [classes/:?]
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) [spring-core-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) [spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) [spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) [spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:655) [spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at hoot.services.nativeinterfaces.JobExecutionManager$$EnhancerBySpringCGLIB$$6c073a4a.exec(<generated>) [classes/:?]
at hoot.services.controllers.job.ProcessJobRunnable.processJob(ProcessJobRunnable.java:148) [classes/:?]
at hoot.services.controllers.job.ProcessJobRunnable.processCommand(ProcessJobRunnable.java:95) [classes/:?]
at hoot.services.controllers.job.ProcessJobRunnable.run(ProcessJobRunnable.java:73) [classes/:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_111]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]
2017-02-28 21:05:07,434 ERROR JobStatusManager:172 - Job with ID: 75a48bd4-4b77-449a-b706-fb3429426abe failed: Failed to execute.  Cause: /bin/sh: /usr/local/bin/gdal2tiles.py: No such file or directory
make: *** [step1] Error 127

2017-02-28 21:05:07,443 ERROR ProcessJobRunnable:80 - Error executing job with ID = 75a48bd4-4b77-449a-b706-fb3429426abe
hoot.services.nativeinterfaces.NativeInterfaceException: Failed to execute.  Cause: /bin/sh: /usr/local/bin/gdal2tiles.py: No such file or directory
make: *** [step1] Error 127

at hoot.services.nativeinterfaces.ProcessStreamInterface.exec(ProcessStreamInterface.java:184) ~[classes/:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_111]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_111]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_111]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) ~[spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) ~[spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) ~[spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at com.sun.proxy.$Proxy38.exec(Unknown Source) ~[?:?]
at hoot.services.nativeinterfaces.JobExecutionManager.exec(JobExecutionManager.java:57) ~[classes/:?]
at hoot.services.nativeinterfaces.JobExecutionManager$$FastClassBySpringCGLIB$$ee2a09c3.invoke(<generated>) ~[classes/:?]
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) ~[spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) ~[spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) ~[spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:655) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at hoot.services.nativeinterfaces.JobExecutionManager$$EnhancerBySpringCGLIB$$6c073a4a.exec(<generated>) ~[classes/:?]
at hoot.services.controllers.job.ProcessJobRunnable.processJob(ProcessJobRunnable.java:148) ~[classes/:?]
at hoot.services.controllers.job.ProcessJobRunnable.processCommand(ProcessJobRunnable.java:95) ~[classes/:?]
at hoot.services.controllers.job.ProcessJobRunnable.run(ProcessJobRunnable.java:73) [classes/:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_111]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]
Caused by: java.lang.Exception: /bin/sh: /usr/local/bin/gdal2tiles.py: No such file or directory
make: *** [step1] Error 127

at hoot.services.nativeinterfaces.ProcessStreamInterface.exec(ProcessStreamInterface.java:174) ~[classes/:?]
... 30 more
sputnam commented 7 years ago

For now we've decided to fix this via setting up sym links during the install process. Then we'll fix the reference in the hoot code next sprint.

sputnam commented 7 years ago

This was merged, tested, and verified. Setting to closed.