CARTAvis / carta

To CARTA users, this repo holds the CARTA release packages. Please use this repo to log bugs and feature requests. These will be triaged by the development team and prioritised as necessary in the development cycles.
19 stars 0 forks source link

Can't start 3.0.0-beta.3 on rh7 #140

Closed keflavich closed 2 years ago

keflavich commented 2 years ago

Describe the bug CARTA crashes on startup with:

/scratch/local/34157334/appimage_extracted_4c16d192ae3eab0dece247adb9197436/bin/carta_backend /lib64/libnss3.so: version `NSS_3.52' not found (required by /scratch/local/34157334/appimage_extracted_4c16d192ae3eab0dece247adb9197436/lib/libssl3.so)

I suspect this is an issue with the appimage not unpacking

To Reproduce I'm running CARTA with:

CARTA=/orange/adamginsburg/software/CARTA-v3.0.0-beta.3-redhat.AppImage --no_browser --root=$PWD --port=35537"
APPIMAGE_EXTRACT_AND_RUN=1  $CARTA

Platform info (please complete the following information):

(I'm using the "Red Hat Linux AppImage" version)

ajm-ska commented 2 years ago

@keflavich I believe the problem ultimately comes down to 'curl' that is used by the Spectral Line query. In an attempt to increase compatibility with this release, we did not bundle libnss3.so and libnssutil3.so. We thought this would allow curl to use the system's NSS certificates and make it easier for us to have a single AppImage to be used between Redhat 7 and Redhat 8. It worked fine in our testing, but we only tested with an up-to-date Redhat 7.9. There must be another bundled library with a dependency on libnss3.so that we missed.

Which RedHat7 version are you running? cat /etc/redhat-release

If you run strings /lib64/libnss3.so | grep NSS_3, it will likely not list NSS_3.52.

Another way to check is to run curl -V. What is the latest NSS it shows?

My guess is "curl" on your system would be unable to connect with any HTTPS service.

Are you able to update nss? sudo yum update nss. It would be a good idea for system security.

After updating nss, does strings /lib64/libnss3.so | grep NSS_3 now show NSS_3.52? If so, the AppImage should work.

keflavich commented 2 years ago

Red Hat Enterprise Linux Server release 7.7 (Maipo)

$ strings /lib64/libnss3.so | grep NSS_3
NSS_3.2
NSS_3.2.1
NSS_3.3
NSS_3.3.1
NSS_3.4
NSS_3.5
NSS_3.6
NSS_3.7
NSS_3.7.1
NSS_3.8
NSS_3.9
NSS_3.9.2
NSS_3.9.3
NSS_3.10
NSS_3.10.2
NSS_3.11
NSS_3.11.1
NSS_3.11.2
NSS_3.11.7
NSS_3.11.9
NSS_3.12
NSS_3.12.1
NSS_3.12.3
NSS_3.12.4
NSS_3.12.5
NSS_3.12.6
NSS_3.12.7
NSS_3.12.9
NSS_3.12.10
NSS_3.13
NSS_3.13.2
NSS_3.14
NSS_3.14.1
NSS_3.14.3
NSS_3.15
NSS_3.15.4
NSS_3.16.1
NSS_3.16.2
NSS_3.18
NSS_3.19
NSS_3.19.1
NSS_3.21
NSS_3.22
NSS_3.30
NSS_3.31
NSS_3.33
NSS_3.34
NSS_3.39
NSS_3.43
NSS_3.44
$ curl --version
curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.44 zlib/1.2.7 libidn/1.28 libssh2/1.8.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets

No, I don't have superuser access and cannot update any system libraries.

ajm-ska commented 2 years ago

@keflavich I have one more question. Does the following curl command work on your RedHat 7.7 machine?

curl -s "https://splatalogue.online/c_export.php?&sid%5B%5D=&data_version=v3.0&lill=on&lill_cdms_jpl=-5&displayJPL=displayJPL&displayCDMS=displayCDMS&displayLovas=displayLovas&displaySLAIM=displaySLAIM&displayToyaMA=displayToyaMA&displayOSU=displayOSU&displayRecomb=displayRecomb&displayLisa=displayLisa&displayRFI=displayRFI&ls1=ls1&ls2=ls2&ls3=ls3&ls4=ls4&ls5=ls5&el1=el1&el2=el2&el3=el3&el4=el4&show_unres_qn=show_unres_qn&submit=Export&export_type=current&export_delimiter=tab&offset=0&limit=100000&range=on&frequency_units=MHz&from=5000&to=7000"
keflavich commented 2 years ago

yes:

$ curl -s "https://splatalogue.online/c_export.php?&sid%5B%5D=&data_version=v3.0&lill=on&lill_cdms_jpl=-5&displayJPL=displayJPL&displayCDMS=displayCDMS&displayLovas=displayLovas&displaySLAIM=displaySLAIM&displayToyaMA=displayToyaMA&displayOSU=displayOSU&displayRecomb=displayRecomb&displayLisa=displayLisa&displayRFI=displayRFI&ls1=ls1&ls2=ls2&ls3=ls3&ls4=ls4&ls5=ls5&el1=el1&el2=el2&el3=el3&el4=el4&show_unres_qn=show_unres_qn&submit=Export&export_type=current&export_delimiter=tab&offset=0&limit=100000&range=on&frequency_units=MHz&from=5000&to=7000"
Species Chemical Name   Freq-MHz(rest frame,redshifted) Freq Err(rest frame,redshifted) Meas Freq-MHz(rest frame,redshifted)    Meas Freq Err(rest frame,redshifted)    Resolved QNs    Unresolved Quantum Numbers      CDMS/JPL Intensity      S<sub>ij</sub>&#956;<sup>2</sup> (D<sup>2</sup>)        S<sub>ij</sub>  Log<sub>10</sub> (A<sub>ij</sub>)        Lovas/AST Intensity     E_L (cm^-1)     E_L (K) E_U (cm^-1)     E_U (K) Linelist
C8H-    1,3,5,7-Octatetraynyl anion     5833.39920      0.0007                  5-4      5           4  -4.94290        540.74648       5.00000 -6.94470                0.38920 0.55997 0.58378 0.83993 CDMS
HC9N    Cyanotetraacetylene                     6391.39800      0.005   11-10   J=11-10 -4.93310        344.95242       11.00000        -7.34125                1.06600 1.53373 1.27919 1.84046 JPL
HC9N    Cyanotetraacetylene                     6972.43400      0.005   12-11   J=12-11 -4.82020        376.31050       12.00000        -7.22631                1.27920 1.84047 1.51178 2.17510 JPL

But I should note that in CARTA 3.0.0b2, when I try to run the splatalogue tool from the web interface, it results in a segmentation fault and crashes the carta server.

ajm-ska commented 2 years ago

Thanks. That looks promising. I will try to remove a few more bundled library files to see if it could exclusively use your system's old curl and related libs.

kswang1029 commented 2 years ago

yes:

$ curl -s "https://splatalogue.online/c_export.php?&sid%5B%5D=&data_version=v3.0&lill=on&lill_cdms_jpl=-5&displayJPL=displayJPL&displayCDMS=displayCDMS&displayLovas=displayLovas&displaySLAIM=displaySLAIM&displayToyaMA=displayToyaMA&displayOSU=displayOSU&displayRecomb=displayRecomb&displayLisa=displayLisa&displayRFI=displayRFI&ls1=ls1&ls2=ls2&ls3=ls3&ls4=ls4&ls5=ls5&el1=el1&el2=el2&el3=el3&el4=el4&show_unres_qn=show_unres_qn&submit=Export&export_type=current&export_delimiter=tab&offset=0&limit=100000&range=on&frequency_units=MHz&from=5000&to=7000"
Species Chemical Name   Freq-MHz(rest frame,redshifted) Freq Err(rest frame,redshifted) Meas Freq-MHz(rest frame,redshifted)    Meas Freq Err(rest frame,redshifted)    Resolved QNs    Unresolved Quantum Numbers      CDMS/JPL Intensity      S<sub>ij</sub>&#956;<sup>2</sup> (D<sup>2</sup>)        S<sub>ij</sub>  Log<sub>10</sub> (A<sub>ij</sub>)        Lovas/AST Intensity     E_L (cm^-1)     E_L (K) E_U (cm^-1)     E_U (K) Linelist
C8H-    1,3,5,7-Octatetraynyl anion     5833.39920      0.0007                  5-4      5           4  -4.94290        540.74648       5.00000 -6.94470                0.38920 0.55997 0.58378 0.83993 CDMS
HC9N    Cyanotetraacetylene                     6391.39800      0.005   11-10   J=11-10 -4.93310        344.95242       11.00000        -7.34125                1.06600 1.53373 1.27919 1.84046 JPL
HC9N    Cyanotetraacetylene                     6972.43400      0.005   12-11   J=12-11 -4.82020        376.31050       12.00000        -7.22631                1.27920 1.84047 1.51178 2.17510 JPL

But I should note that in CARTA 3.0.0b2, when I try to run the splatalogue tool from the web interface, it results in a segmentation fault and crashes the carta server.

Where is the server? Florida or NRAO?

keflavich commented 2 years ago

The CARTA server I'm running is hosted in Florida on the hipergator supercomputer

ajm-ska commented 2 years ago

@keflavich Please try this version. I removed the bundled libcurl.so.4, libsmimi3.so, and libssl3.so.

https://alma.asiaa.sinica.edu.tw/_downloads/CARTA-v3.0.0-beta.3-redhat-test.tgz

keflavich commented 2 years ago

It works, thanks!

ajm-ska commented 2 years ago

@keflavich I'm glad to hear it works! Thank you for reporting the problem so that we were able to improve the compatibility with older RedHat versions. Now I have just replaced the redhat AppImage in the carta repo with this updated one.