Slow Thunderbird, NSS DB caching isn't enabled automatically on a RHEL 7.4 network filesystem.
Categories
(NSS :: Libraries, defect, P2)
Tracking
(Not tracked)
People
(Reporter: KaiE, Unassigned)
References
Details
Please see bug 1512021 comment 22.
A network file system is used for NSS database storage (Thunderbird profile directory).
Based on user feedback, NSS_SDB_USE_CACHE wasn't enabled automatically.
I believe we have some detection, based on the filesystem type of the NSS directory. Apparently that detection isn't working.
Reporter | ||
Updated•6 years ago
|
Comment 1•6 years ago
|
||
Sorry, I cannot reproduce that. I see the autodetection mechanism active, both with 7.4.0 and current 7.4.eus packages (that is nss-3.28.4-8.el7.x86_64 and nss-3.28.4-15.el7_4.x86_64).
what versions of nss, nspr, nss-softokn and nss-util are installed on that system?
Can you run thunderbird under strace -o trace -fc -e trace=access
and upload the resulting trace
file here?
I'm not sure how all these pieces fit together and I realize now that maybe my problem is a special case.
Some background.
The problem I see is on a server machine that users can log in to through Citrix. Each user can decide what programs and versions to use by a module add
system. The programs are installed on AFS and users can do e.g. module add thunderbird/60.7.2
and that will set up paths etc. It seems to set thunderbirdPATH
to where Thunderbird is installed.
Home directories are on NFS and using automount (I don't know much about this).
I'm not sure if the Thunderbird installation on AFS is built here or from a downloaded .rpm.
If I do Preferences | Security Devices | Builtin Roots Module then the Path says:
/afs/xxxxx/RHEL6-x86_64/thunderbird/60.7.2/libnssckbi.so
So I guess the NSS stuff in use are from where a specific version of Thunderbird is installed.
I don't know if this is what I'm looking for but in the directory where Thunderbird is installed I find this:
~> ls -l /xxxx/RHEL6-x86_64/thunderbird/60.7.2/ | egrep 'nss|nspr'
-rwxr-xr-x 1 afsvbuild afsvbuildgrp 236672 Jun 20 11:04 libnspr4.so
-rwxr-xr-x 1 afsvbuild afsvbuildgrp 615416 Jun 20 11:04 libnss3.so
-rwxr-xr-x 1 afsvbuild afsvbuildgrp 466904 Jun 20 11:04 libnssckbi.so
-rw-r--r-- 1 afsvbuild afsvbuildgrp 899 Jun 20 11:04 libnssdbm3.chk
-rwxr-xr-x 1 afsvbuild afsvbuildgrp 134248 Jun 20 11:04 libnssdbm3.so
-rwxr-xr-x 1 afsvbuild afsvbuildgrp 179960 Jun 20 11:04 libnssutil3.so
For the trace I did:
> module add thunderbird/60.7.2
> strace -o trace -fc -e trace=access thunderbird
Then Preferences | Manage Certificates
Wait till the window pops up (~1 minute), then close everything down and quit.
The resulting trace file contain only this:
> cat trace
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
100.00 0.008934 8 1116 368 access
------ ----------- ----------- --------- --------- ----------------
100.00 0.008934 1116 368 total
>
For my part I'm very happy with the export NSS_SDB_USE_CACHE=yes
fix (in 1512021). I'm starting Thunderbird from a script anyway so I have just added that line to the script and it works fine for me now.
Reporter | ||
Comment 3•6 years ago
|
||
The location of the application and the library files shouldn't matter. The interesting part is: Where is the dynamic data of the user stored, i.e. $HOME/.thunderbird and its subdirectories, containing files named key4.db and cert9.db ?
Comment 4•6 years ago
|
||
RHEL6-x86_64
you mentioned RHEL-7.4 before... there is a known issue with the autodetection mechanism on RHEL-6, it was fixed in RHEL-6.6.0: https://bugzilla.redhat.com/show_bug.cgi?id=1044666 but given that you see use of NSS_SDB_USE_CACHE
to improve the situation, I'm guessing it's just an artefact of the setup, not actually RHEL-6 packages
errors 368
that looks like the autodetection mechanism working, I don't know why it's slow, maybe it misdetects the configuration, but I have no idea why it would
The part about where the application is installed was to explain that I don't know answer to
what versions of nss, nspr, nss-softokn and nss-util are installed on that system?
The key4.db and cert9.db are in my home directory, which is on NFS.
The OS is
> cat /etc/os-release
NAME="Red Hat Enterprise Linux Server"
VERSION="7.4 (Maipo)"
But the Thunderbird installation I get when I do the module add
thing is in a directory named like .../RHEL6-x86_64/....
. I don't know why or if that means anything. But maybe my Thunderbird is built from source on RHEL6 even though the OS is now RHEL7?
I looked around and saw that we also have installations in directories named like .../RHEL7-x86_64/....
. I tried Thunderbird 60.7.2 from there but it has the same issue.
I understand that you can't know anything about our strange installation solution.. only our IT guys knows about that. Just trying to explain.
Updated•6 years ago
|
Updated•3 years ago
|
Description
•