Popup notification never disappears

edited April 11, 2018
Zotero version 5.0.41, running on ubuntu 16.04

Repro steps:
1. Start zotero
2. Immediately close zotero before it has the chance to get started

Result: Zotero leaves stray gui elements, these should be cleaned up.

Now I have a popup notification on top of all my windows that will never disappear:
https://imgur.com/a/pko8d

One possible solution would be to put an [x] in the corner of the notification, allowing it to be closed manually even if it is orphaned by the main application.

Report ID: not applicable.
  • BBT issues need to be reported to the BBT developer on GitHub.
  • I put up the notification, but if Zotero quits, BBT (obviously) quits. I couldn't keep up the notice if I wanted to. If this popup is present, Zotero is 100% sure still running.

    A log (without debug logging on) was posted to the BBT issue list; the only error present is "You have reached your Zotero File Storage quota. Some files were not uploaded. Other Zotero data will continue to sync to the server." From what little activity I could see there, Zotero was still trying to upload attachments one by one and failing on all of them because of the quota issue when the log was posted.
  • Certainly Zotero is still running, but it'd be possible for, say, something in BBT to hold open a DB connection and prevent Zotero from closing. I'm not saying that's necessarily the case here, but I'm not aware of anything in Zotero proper (e.g., sync) that prevents it from closing.

    @leahperl: If you can generate real-time debug output from the terminal (so using ZoteroDebugText) for this and email it to support@zotero.org with a link to this thread, we can take a look.
  • I'd have to see a more detailed log, but if the "waiting" message is still shown, BBT has not yet opened the DB connection. BBT opens the DB after the 2nd message is shown ("Loading citation keys"); if that is not visible, BBT has not opened a DB connection. Before the "waiting" I only install my code and the monkey patches; between "waiting" and "loading keys" I only do an await on Zotero.Schema.schemaUpdatePromise. Can the await itself block Zotero shutdown? Can it be the popup window itself?
  • @leahperl notes in the BBT tracker that restarting with debug logging *does* clear the popup BTW. What is different between closing with the 'x' and closing by file/quit or "restart with debug"?
  • Wait -- I have it reproducible, but now I don't know why it doesn't say "loading keys". BBT has gotten a DB connection in my case.

    That still leaves the question -- what is different between the 'x' (the only way I can reproduce it) and File/Quit (which closes Zotero as expected)?
  • I got it wrong. BBT didn't have a DB connection yet. I am opening files in the data dir -- it looks like clicking the 'x' resolves schemaUpdatePromise. After that I try to access Zotero.File.pathToFile(Zotero.DataDirectory.dir) but the component isn't (fully) loaded it looks like, and everything goes south, but BBT hasn't gotten to the DB stuff yet at this point.
  • Yep, definately and consistently seeing schemaUpdatePromise resolve when I click the 'x', which BBT will take as a signal it can proceed loading. At that time, Zotero will have begun tearing down, so the file access fails there ("Exception... "Component not initialized" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)") and for some reason I don't yet understand, this leaved Zotero in limbo.
  • It may actually be the popup itself. If I open the debug output window in Zotero (linux), and click the 'x' on the main window, Zotero remains running until I close the debug window. Perhaps the notification does the same thing.
  • Yeah, it's the popup itself. I can reproduce it with just the import popup. Issue created, thanks.
  • This should be fixed in the latest Zotero beta, and the fix will be included in Zotero 5.0.45. Thanks for reporting.
  • Thanks for your attention on this issue!
Sign In or Register to comment.