fiftyone: [BUG] FiftyOne import fails, Ubuntu 22.02 LTS
System information
- OS Platform and Distribution: Ubuntu 22.04 LTS
- FiftyOne installed from (pip or source): pip
- FiftyOne version (run
fiftyone --version
): Not applicable, due to failing import: - Python version: Python 3.10.4
Commands to reproduce
conda create -n PDSM pip
conda activate PDSM
pip install --upgrade pip setuptools wheel
pip install fiftyone
python3
import fiftyone
Describe the problem
python
Python 3.10.4 (main, Mar 31 2022, 08:41:55) [GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import fiftyone
Subprocess ['/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/db/bin/mongod', '--dbpath', '/home/nils/.fiftyone/var/lib/mongo', '--logpath', '/home/nils/.fiftyone/var/lib/mongo/log/mongo.log', '--port', '0', '--nounixsocket'] exited with error 127:
/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/db/bin/mongod: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
Uncaught exception
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/__init__.py", line 25, in <module>
from fiftyone.__public__ import *
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/__public__.py", line 15, in <module>
_foo.establish_db_conn(config)
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/core/odm/database.py", line 155, in establish_db_conn
port = _db_service.port
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/core/service.py", line 276, in port
return self._wait_for_child_port()
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/core/service.py", line 170, in _wait_for_child_port
return find_port()
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/retrying.py", line 49, in wrapped_f
return Retrying(*dargs, **dkw).call(f, *args, **kw)
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/retrying.py", line 212, in call
raise attempt.get()
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/retrying.py", line 247, in get
six.reraise(self.value[0], self.value[1], self.value[2])
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/six.py", line 719, in reraise
raise value
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/retrying.py", line 200, in call
attempt = Attempt(fn(*args, **kwargs), attempt_number, False)
File "/home/nils/anaconda3/envs/PDSM/lib/python3.10/site-packages/fiftyone/core/service.py", line 168, in find_port
raise ServiceListenTimeout(etau.get_class_name(self), port)
fiftyone.core.service.ServiceListenTimeout: fiftyone.core.service.DatabaseService failed to bind to port
Code to reproduce issue
see above
Other info / logs
What areas of FiftyOne does this bug affect?
-
App
: FiftyOne application issue -
Core
: Corefiftyone
Python library issue -
Server
: Fiftyone server issue
Willingness to contribute
The FiftyOne Community encourages bug fix contributions. Would you or another member of your organization be willing to contribute a fix for this bug to the FiftyOne codebase?
- Yes. I can contribute a fix for this bug independently.
- Yes. I would be willing to contribute a fix for this bug with guidance from the FiftyOne community.
- No. I cannot contribute a bug fix at this time.
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 18 (5 by maintainers)
@Nils-ChristianIseke Unfortunately not for me. I installed the newest
libssl1.1
package, then tried toimport fiftyone as fo
.Resulting error:
Ubuntu 22.04 should be adopted by a lot of people now. Really frustrating to have to deal with such issues.
Ubuntu 22.04 users should now be able to install FiftyOne as follows:
Note: manually installing
fiftyone-db-ubuntu2204
will be necessary until we update the MongoDB version here to 6.0.4 or greater, at which point thefiftyone
package will ship with MongoDB 6.0.4 by default on all Linux systems.That didn’t work for me, I needed to download and install a more recent version of libssl (ibssl1.1_1.1.1) from here: https://packages.debian.org/buster/amd64/libssl1.1/download
@tadejsv Thank you very much! The provided solution resolves the import error:
sudo dpkg -i libssl1.1*.deb
This is related to libcrypto1.1 not being availible on Ubuntu 22.04 https://askubuntu.com/a/1403961/1102180
It is true that the current MongoDB that is distributed by default (5.0) will not work on 22.04. We will look into upgrading to 6.0 as the default binary or at least offer an optional upgrade
Regardless, MongoDB 6.0 is available now for Ubuntu 22.04 and can be used instead via your own database URI. We have instructions for configuring your own MongoDB connection here
My solution was to create a new machine with ubuntu 20.04 😄