Open Bug 1757271 Opened 2 years ago Updated 11 months ago

[clang, ppc64le] The bookmarks and history system will not be functional because one of Firefox's files is in use by another application

Categories

(Toolkit :: Places, defect, P5)

Firefox 97
defect

Tracking

()

UNCONFIRMED

People

(Reporter: niccolo.belli, Unassigned)

Details

Attachments

(2 files, 1 obsolete file)

Steps to reproduce:

I've emerged Firefox 97.0.1 on Gentoo ppc64le with the clang use flag (had to apply both https://bitbucket.org/jpommier/pffft/pull-requests/2 and https://bitbucket.org/jpommier/pffft/pull-requests/3 in order to successfully compile it, see https://bugzilla.mozilla.org/show_bug.cgi?id=1738872).

Actual results:

Unfortunately the resulting binary gives me the following message at startup: "The bookmarks and history system will not be functional because one of Firefox's files is in use by another application". I've tried to remove both ~/.mozilla and ~/.cache/mozilla but it didn't help. I've previously built it with gcc and it worked fine (it didn't need the beforementioned patches).

Expected results:

It shouldn't display such message when using clang to compile it.

Hey Niccolo,
Can you test the issue while in Safe Mode? You can find helpful info here : https://support.mozilla.org/en-US/kb/troubleshoot-firefox-issues-using-safe-mode .
Testing with a fresh new profile could help. You can find more about creating a new profile here : https://support.mozilla.org/en-US/kb/troubleshoot-and-diagnose-firefox-problems#w_6-create-a-new-firefox-profile .
If possible, you can test this issue on the nightly build as well. Download the build from : https://www.mozilla.org/en-US/firefox/nightly/all/ .

Flags: needinfo?(niccolo.belli)

The Bugbug bot thinks this bug should belong to the 'Firefox::Bookmarks & History' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Bookmarks & History

@Andrei: This isn't about add-ons or safe-mode. The user has already tried removing all the profile files, which would start with a new profile.

@Niccolò: Is there anything relevant on the browser console after starting up? Do other areas also not work correctly? Maybe form history, or cookies? If so, then this might be more to do with the sqlite implementation.

Component: Bookmarks & History → Places
Product: Firefox → Toolkit

it sounds like Sqlite may be broken and it's unable to open the database, unfortunately I don't know the status of that build target.

Low priority because this isn't a tier1 target, though we'd totally be intertested in someone investigating it, if they have access to the platform. I still suspect the problem is in Sqlite. Also see this thread https://sqlite.org/forum/info/8626efc4a9efa977ca572329cf058ecfdb1f5c7cf7140854aa577d91e92115d3

Severity: -- → S4
Priority: -- → P5

As Niccolò mentions, Firefox works when compiled with GCC. This bug occurs when it’s compiled with Clang, everything else the same.

(In reply to Mark Banner (:standard8) from comment #3)

@Niccolò: Is there anything relevant on the browser console after starting up?

PushService: stateChangeProcessEnqueue: Error transitioning state UnknownError PushService.jsm:165
Error(s) encountered during statement execution: database disk image is malformed 248 Sqlite.jsm:966
handleCompletion resource://gre/modules/Sqlite.jsm:966
undefined history-persistence.js:32:15
historyPersistenceMiddleware resource://devtools/client/webconsole/middleware/history-persistence.js:32
IndexedDB UnknownErr: ActorsParent.cpp:562

Flags: needinfo?(niccolo.belli)

I've tried with the attached patch but it fails at the http3server:

6:17.39 Compiling http3server v0.1.1 (/var/tmp/portage/www-client/firefox-104.0/work/firefox-104.0/netwerk/test/http3server)
6:17.39 Running CARGO=/usr/lib/rust/1.62.1/bin/cargo-1.62.1 CARGO_BIN_NAME=http3server CARGO_CRATE_NAME=http3server CARGO_MANIFEST_DIR=/var/tmp/portage/www-client/firefox-104.0/work/firefox-104.0/netwerk/test/http3server CARGO_PKG_AUTHORS='Dragana Damjanovic <dragana.damjano@gmail.com>' CARGO_PKG_DESCRIPTION='' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE='' CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=http3server CARGO_PKG_REPOSITORY='' CARGO_PKG_VERSION=0.1.1 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=1 CARGO_PKG_VERSION_PATCH=1 CARGO_PKG_VERSION_PRE='' CARGO_PRIMARY_PACKAGE=1 LD_LIBRARY_PATH='/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./release/deps:/usr/lib/rust/1.62.1/lib' /usr/bin/rustc --crate-name http3server --edition=2018 netwerk/test/http3server/src/main.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type bin --emit=dep-info,link -C opt-level=2 -C panic=abort -C embed-bitcode=no -C metadata=0bbec1ea7dd58ff9 -C extra-filename=-0bbec1ea7dd58ff9 --out-dir /var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps --target powerpc64le-unknown-linux-gnu -C linker=/var/tmp/portage/www-client/firefox-104.0/work/firefox-104.0/build/cargo-linker -L dependency=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps -L dependency=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./release/deps --extern base64=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libbase64-0bd1b7c5e35634df.rlib --extern log=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/liblog-920c01d15cae3303.rlib --extern mio=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libmio-6e3af4d63dd4b352.rlib --extern mio_extras=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libmio_extras-d266c2ef7addfec0.rlib --extern neqo_common=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libneqo_common-18c263cf89866bf6.rlib --extern neqo_crypto=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libneqo_crypto-59e622d0b6df0d8e.rlib --extern neqo_http3=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libneqo_http3-b0c9024e9525a8c9.rlib --extern neqo_qpack=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libneqo_qpack-e2a9cda0492adda2.rlib --extern neqo_transport=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server/./powerpc64le-unknown-linux-gnu/release/deps/libneqo_transport-8fee7e87cec0c7d9.rlib --cap-lints warn -C codegen-units=1 -L native=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/dist/bin -L native=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/security/nss/lib/nss/nss_nss3 -L native=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/security/nss/lib/ssl/ssl_ssl3 -L native=/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/config/external/nspr/pr
6:29.10 Finished release [optimized] target(s) in 4m 56s
6:29.36 ../../../config/nsinstall -R -m 755 'powerpc64le-unknown-linux-gnu/release/http3server' '../../../dist/bin'
6:29.36 gmake[4]: Leaving directory '/var/tmp/portage/www-client/firefox-104.0/work/firefox_build/netwerk/test/http3server'
6:29.36 gmake[3]: Leaving directory '/var/tmp/portage/www-client/firefox-104.0/work/firefox_build'
6:29.36 gmake[2]: *** [/var/tmp/portage/www-client/firefox-104.0/work/firefox-104.0/config/recurse.mk:34: compile] Error 2
6:29.37 gmake[2]: Leaving directory '/var/tmp/portage/www-client/firefox-104.0/work/firefox_build'
6:29.37 gmake[1]: *** [/var/tmp/portage/www-client/firefox-104.0/work/firefox-104.0/config/rules.mk:361: default] Error 2
6:29.37 gmake[1]: Leaving directory '/var/tmp/portage/www-client/firefox-104.0/work/firefox_build'
6:29.37 gmake: *** [client.mk:63: build] Error 2
6:29.37 10 compiler warnings present.

  • ERROR: www-client/firefox-104.0::gentoo failed (compile phase):
  • (no error message)
  • Call stack:
  • ebuild.sh, line 127:  Called src_compile
    
  • environment, line 5291: Called die
  • The specific snippet of code:
  •   ${virtx_cmd} ./mach build --verbose || die
    

I can confirm this bug is still present on Nightly 112.0a1 when built with Clang.
The workaround is to add -DSQLITE_BYTEORDER=1234 as C/CXX flags as the FreeBSD folks have found: https://gitlab.com/FreeBSD/freebsd-ports/-/blob/main/www/firefox/Makefile

Sorry that was actually an older version, this is the latest one I apply on top of Firefox 110.

Attachment #9319153 - Attachment is obsolete: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: