Closed anjalirai-intel closed 12 months ago
The solution is to mount /usr/share/zoneinfo into scikit-learn manifest
@anjalirai-intel Could you submit a PR that fixes it? You'll need to add it in two places in the manifest file: fs.mounts
and sgx.trusted_files
. And I mean specifying this whole directory /usr/share/zoneinfo/
, not any specific files inside -- it's just easier to specify the whole path.
Also, if you'll do this, please add a comment in the manifest file why this is needed. Something like this is enough:
# Scikit imports pandas; newer versions of pandas rely on pytz which fails if it
# doesn't find /usr/share/zoneinfo/ files (this was found on pytz version 2022.1)
Closing Issue. Fix got merged #70
Description The reason for scikit failure is pytz library installed by apt from some dependencies.
The version installed by apt is 2022.1, If you install the same version using python or pip the codebase is different. In the apt based pytz library, it has an additional function "_read_olson_version() -> str:" which is trying to read from /usr/share/zoneinfo/tzdata.zi, but this path is not mounted into manifest file
Because of this descrepancies in libraries and path not being mounted, scikit fails. Both of the experiments shown below
The solution is to mount /usr/share/zoneinfo into scikit-learn manifest
Error
APT pytz code:
Python/Pip pytz codebase