Open Bug 1804443 Opened 2 years ago Updated 1 year ago

The "Firefox is being updated by another instance" message is misleading

Categories

(Toolkit :: Application Update, defect)

Firefox 107
defect

Tracking

()

UNCONFIRMED

People

(Reporter: gameshowhost, Unassigned)

References

Details

(Whiteboard: [fidedi-ope])

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0

Steps to reproduce:

  1. In Settings, set updates to: "Check for updates but let you choose to install them"
  2. Install out-of-date version (v107.0)

Actual results:

When Firefox launches, the About window sometimes says "Firefox is being updated by another instance". Sometimes this appears immediately, other times it appears after a while.

Expected results:

When asked if I want to update to the latest version, I always click "Dismiss", so I would not expect to see any message saying "Firefox is being updated".

Incidentally, I wish there were a setting to NOT check for updates automatically. I prefer to do all my updating manually.

Further info: Here is what the Browser console reports when I enable app.update.log and filter by AUS:SVC

AUS:SVC isServiceInstalled - returning true
AUS:SVC shouldUseService - returning false
AUS:SVC isServiceInstalled - returning true
AUS:SVC shouldUseService - returning false
AUS:SVC UpdateService:removeDownloadListener - Warning: Didn't remove non-existent listener

(The above repeats every few minutes)

The Bugbug bot thinks this bug should belong to the 'Toolkit::Application Update' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Application Update
Product: Firefox → Toolkit

This is expected behavior. The wording is indeed misleading; we should probably fix that. But we display that message if another instance is preventing us from updating. This can be because the current instance doesn't hold the update mutex (only one instance can hold the update mutex at a time and only that one can do any kind of updating) or even if the current instance does have the update mutex, but detects another instance running. This behavior is intended to prevent Bug 1480452 from occurring.

The message was written when it was only shown when Firefox couldn't get the update mutex and we didn't change the wording when we changed the behavior. I was originally thinking that we should have two messages, the old one and a new one that says something like "another running instance of Firefox is preventing us from updating". But actually, I think we should just replace the old message entirely. An instance holding the update mutex doesn't actually mean that it is updating. It just means that it can.

(In reply to S. Jones from comment #0)

Incidentally, I wish there were a setting to NOT check for updates automatically. I prefer to do all my updating manually.

This functionality exists, but there are security reasons why it cannot be a regular setting. It instead exists as an enterprise policy called ManualAppUpdateOnly. I recommend that, if you choose to use this, you make sure to update your browser regularly. An out-of-date browser can be a significant security risk.

Severity: -- → S3
Summary: About window says: "Firefox is being updated by another instance" but "Automatically install updates" is disabled → The "Firefox is being updated by another instance" message is misleading
Whiteboard: [fidedi-ope]

Sir, thank you so much for your very helpful answer!

I'd say this particular message definitely needs to be reconsidered. I initially mistook the message to mean that the "other instance" was a reference to the latest version of Firefox, which was already running, and in the process of replacing the current version.

I might suggest the message be something like: "This instance of Firefox cannot update due to others open."

May I also note that even when I'm only running a single Firefox instance/profile, I still see the message "Firefox is being updated by another instance".

(In reply to S. Jones from comment #4)

May I also note that even when I'm only running a single Firefox instance/profile, I still see the message "Firefox is being updated by another instance".

Specifically what operating system are you running? If you aren't sure, you can right click on the start menu icon and click "System". Mine, for example, lists "Edition: Windows 11 Pro". If you are using something like "Windows Server 2022", it is quite likely that other users are logged into to the same system running other instances of Firefox.

If this is not the case, we can investigate further. Could you collect a similar log to the console log you collected before, like this:

  1. Navigate to about:config.
  2. Set app.update.log to true.
  3. Open the Browser Console either with the hotkey Control+Shift+J (Command+Shift+J on macOS), or via Hamburger Menu->More Tools->Browser Console
  4. In the Filter textbox at the top, enter AUS: to filter out everything except the update messages.
  5. Open the About dialog or navigate to the "Update" section of about:preferences.
  6. Once the "other instance" message has been shown, collect the log messages from the Browser Console and attach them to this bug.

This is probably quite similar to what you did before, but there are update-related messages with different AUS: prefixes (not just AUS:SVC) that I would like to see.

Also, just to confirm, you are doing this on Firefox version 107.0?

Flags: needinfo?(gameshowhost)

Thanks so much. I must apologize as I might have been mistaken about the message appearing with only one instance open. I've tried relaunching Firefox a few times and haven't been able to repeat this so far. If I do see this happen again, I'll post details here, otherwise assume I was mistaken. I'm running 107.0 on Win7 x64

Flags: needinfo?(gameshowhost)

I'd also like to note that whenever I open any TWO Firefox instances/profiles, they always BOTH say "Firefox is being updated by another instance". This surely means that NEITHER instance has the update mutex? I'm not sure if this is intended?

It is possible that there could be a short period where other instances have just been closed but Firefox still shows the "other instance" message. Maybe that is what was happening.

(In reply to S. Jones from comment #7)

I'd also like to note that whenever I open any TWO Firefox instances/profiles, they always BOTH say "Firefox is being updated by another instance". This surely means that NEITHER instance has the update mutex? I'm not sure if this is intended?

As I mentioned in Comment 3, Firefox shows this message even when the current instance has the mutex, if it detects other instances running. If this situation persists for too long, eventually the one with the mutex will go ahead and proceed with the update. We want to avoid Bug 1480452, but we don't want to never install updates because of it.

Thanks for all your excellent, helpful advice, and your time!

Just for the record, my only concern, personally, is security/privacy. Unfortunately, I've had bad experiences in the past with applications remotely "updating" themselves to deliver spyware. No matter how unlikely this is with Firefox, it's my preference to only use offline installers, so that I can personally scan the file myself and know exactly what I'm getting. Naturally, then, I was a little concerned when I noticed the message: "Firefox is being updated by another instance". But it makes sense, now. Thank you!

You need to log in before you can comment on or make changes to this bug.