zoglauer / megalib

MEGAlib - the Medium-Energy Gamma-ray Astronomy library
http://megalibtoolkit.com
Other
41 stars 32 forks source link

Geant4 database download issues #59

Closed pbloser closed 3 years ago

pbloser commented 3 years ago

I'm working on a RHEL7 cluster at LANL. I'm telling it use an existing ROOT 6.22.06 installation. The existing Geant4 installations are more recent than what MEGAlib wants so I'm letting it install it's own. Full command:

$ bash MEGAlib/setup.sh --megalibpath=MEGAlib --branch=master --root=/packages2.5/x86_64-pc-linux-gnu-rhel7/root/6.22.06/

So the various databases aren't getting downloaded. For each one in the MEGAlib/external/Geant4BuildLog.txt file there's output like this:


CMake Error at /home/pbloser/MEGAlib/external/geant4_v10.02.p03/geant4_v10.02.p03-build/Externals/RadioactiveDecay-4.3.2/src/RadioactiveDecay-stamp/download-RadioactiveDecay.cmake:170 (message): Each download failed!

error: downloading 'http://geant4.cern.ch/support/source/G4RadioactiveDecay.4.3.2.tar.gz' failed
      status_code: 35
      status_string: "SSL connect error"
      log:
      --- LOG BEGIN ---
      Uses proxy env variable no_proxy == 'lanl.gov'

Uses proxy env variable http_proxy == 'http://192.12.184.19:8080'

Trying 192.12.184.19:8080...

Connected to 192.12.184.19 (192.12.184.19) port 8080 (#0)

GET http://geant4.cern.ch/support/source/G4RadioactiveDecay.4.3.2.tar.gz HTTP/1.1

Host: geant4.cern.ch

User-Agent: curl/7.72.0

Accept: /

Proxy-Connection: Keep-Alive

Mark bundle as not supporting multiuse

HTTP/1.1 302 Found

Content-Type: text/html; charset=utf-8

Location: http://geant4.web.cern.ch/support/source/G4RadioactiveDecay.4.3.2.tar.gz

Server: Microsoft-IIS/8.5

X-Powered-By: ASP.NET

Date: Thu, 07 Jan 2021 23:05:02 GMT

Content-Length: 189

X-Cache: MISS from proxyout.lanl.gov

X-Cache-Lookup: MISS from proxyout.lanl.gov:8080

Via: 1.1 proxyout.lanl.gov (squid)

Connection: keep-alive

Ignoring the response-body

[189 bytes data]

Connection #0 to host 192.12.184.19 left intact

Issue another request to this URL: 'http://geant4.web.cern.ch/support/source/G4RadioactiveDecay.4.3.2.tar.gz'

Uses proxy env variable no_proxy == 'lanl.gov'

Uses proxy env variable http_proxy == 'http://192.12.184.19:8080'

Found bundle for host 192.12.184.19: 0x154f7e0 [serially]

Can not multiplex, even if we wanted to!

Re-using existing connection! (#0) with proxy 192.12.184.19

Connected to 192.12.184.19 (192.12.184.19) port 8080 (#0)

GET http://geant4.web.cern.ch/support/source/G4RadioactiveDecay.4.3.2.tar.gz HTTP/1.1

Host: geant4.web.cern.ch

User-Agent: curl/7.72.0

Accept: /

Proxy-Connection: Keep-Alive

Mark bundle as not supporting multiuse

HTTP/1.1 301 Moved Permanently

Date: Thu, 07 Jan 2021 23:05:03 GMT

Server: Apache

X-Content-Type-Options: nosniff

Location: https://geant4.web.cern.ch/support/source/G4RadioactiveDecay.4.3.2.tar.gz

Cache-Control: max-age=1209600

Expires: Thu, 21 Jan 2021 23:05:03 GMT

Content-Length: 281

Content-Type: text/html; charset=iso-8859-1

Set-Cookie: cerndrupal_prod_http=drupal8p22; path=/; HttpOnly

Cache-Control: private

X-Cache: MISS from proxyout.lanl.gov

X-Cache-Lookup: MISS from proxyout.lanl.gov:8080

Via: 1.1 proxyout.lanl.gov (squid)

Connection: keep-alive

Ignoring the response-body

[281 bytes data]

Connection #0 to host 192.12.184.19 left intact

Issue another request to this URL: 'https://geant4.web.cern.ch/support/source/G4RadioactiveDecay.4.3.2.tar.gz'

Uses proxy env variable no_proxy == 'lanl.gov'

Uses proxy env variable https_proxy == 'https://192.12.184.19:8080'

Hostname 192.12.184.19 was found in DNS cache

Trying 192.12.184.19:8080...

Connected to 192.12.184.19 (192.12.184.19) port 8080 (#1)

ALPN, offering http/1.1

Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

TLSv1.2 (OUT), TLS header, Certificate Status (22):

[5 bytes data]

TLSv1.2 (OUT), TLS handshake, Client hello (1):

[512 bytes data]

error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol

Closing connection 1

      --- LOG END --

I can download each of those tar files myself with wget (saw this in an issue from a few years ago) but that doesn't' help because each time the setup script runs it re-unpacks the original geant4.10.02.p03.tar.gz file and overwrites the externals directories.

I don't know if this is something I can do anything about, but maybe you can at least help me figure out what question to ask the cluster administrator types?

Other thing I could try to do would be have them install geant4 10.02.p03 specially for me...

Thanks!

zoglauer commented 3 years ago

Hi Peter,

I have never seen this error before. I think the key error message lines are these:

Uses proxy env variable no_proxy == 'lanl.gov' Uses proxy env variable http_proxy == 'http://192.12.184.19:8080' Trying 192.12.184.19:8080...

It looks like the cluster uses a proxy to access the internet and then Geant4 gets confused.

Documentation of this redhat feature might be here: https://access.redhat.com/documentation/en-us/openshift_container_platform/3.4/html/installation_and_configuration/install-config-http-proxies

I agree you should ask one of the administrators to install Geant4 because they should be able to avoid the proxy, even may be using my build script: MEGALIB/config/build-geant4.sh

Let me know if you are successful this way.

Best, Andreas

pbloser commented 3 years ago

The local folks installed geant4 10.02.p03. Now, the databases aren't where the setup scripts seem to want them to be. I'm working with them on that - but, the databases are properly pointed to by the environment variables that packages2.5 set up. So, not sure the best approach - do the setup scripts (setup.sh or geant4.sh, which seems to be where the error came from) look at the environment variables?

pbloser commented 3 years ago

OK, we put in a symbolic link to point to where the databases actually are... Now we're looking at some issue with ROOT... Hopefully the geant4 issue is resolved, but I can't promise that until it all compiles successfully!

pbloser commented 3 years ago

OK last update (not all geant4 related): I used the keepenvironmentasis option to use my existing ENV variables, and then those ROOT-related errors went away. So it liked the way that packages 2.5 had set things up after all... SO, it compiled, and now I'll start testing examples, so this issue can get closed out! Thanks again...

zoglauer commented 3 years ago

You are welcome!