evince hangs on start-up

Bug #515915 reported by Zoubidoo
32
This bug affects 9 people
Affects Status Importance Assigned to Milestone
evince (Ubuntu)
Invalid
Low
Unassigned

Bug Description

Binary package hint: evince

Evince is hanging when trying to open a pdf. After a delay of at least 10 seconds (sometimes much more), with no cpu load, it resumes. The pdf file is present and on local filestore.

I ran strace and the hang coincides with
read(7, 0x9e48540, 2048) = -1 EAGAIN (Resource temporarily unavailable)
See below for more strace output.

Next I tried dbus-launch:
$ dbus-launch evince PIIS1097276509006418.pdf

** (evince:24621): WARNING **: Failed to create dbus proxy for org.gnome.SettingsDaemon: Could not get owner of name 'org.gnome.SettingsDaemon': no such name

But I don't know what that means and if it is related.

This has become such a pain, I use xpdf now.

Platform:
  evince 2.28.1-0ubuntu1.2
  Ubuntu 9.10 on i386
  Kernel: 2.6.31-17-generic #54-Ubuntu SMP

Strace:
[...]
ead(7, "l\2\1\1\t\0\0\0\3\0\0\0=\0\0\0\6\1s\0\6\0\0\0:1.189\0\0"..., 2048) = 89
read(7, 0x9e48540, 2048) = -1 EAGAIN (Resource temporarily unavailable)
writev(7, [{"l\1\1\1\210\0\0\0\3\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/fre"..., 144}, {"\203\0\0\0type='signal',sender='org.fr"..., 136}], 2) = 280
writev(7, [{"l\1\1\1z\0\0\0\4\0\0\0\177\0\0\0\1\1o\0\25\0\0\0/org/fre"..., 144}, {"u\0\0\0type='signal',sender=':1.7',"..., 122}], 2) = 266
gettimeofday({1265099054, 699515}, NULL) = 0
writev(7, [{"l\1\0\1\20\0\0\0\5\0\0\0\230\0\0\0\1\1o\0#\0\0\0/org/gno"..., 168}, {"\6\0\0\0Evince\0\0\1\0\0\0", 16}], 2) = 184
gettimeofday({1265099054, 699650}, NULL) = 0
poll([{fd=7, events=POLLIN}], 1, 25000) = 1 ([{fd=7, revents=POLLIN}])
read(7, "l\2\1\1\0\0\0\0\4\0\0\0005\0\0\0\6\1s\0\6\0\0\0:1.189\0\0"..., 2048) = 144
read(7, 0x9e48540, 2048) = -1 EAGAIN (Resource temporarily unavailable)
gettimeofday({1265099054, 700273}, NULL) = 0
poll([{fd=7, events=POLLIN}], 1, 25000^C <unfinished ...>

Revision history for this message
Pedro Villavicencio (pedro) wrote :

Please try to obtain a backtrace of the hang following the instructions at http://wiki.ubuntu.com/DebuggingProgramCrash and upload the backtrace (as an attachment) to the bug report. This will greatly help us in tracking down your problem.

Changed in evince (Ubuntu):
assignee: nobody → Ubuntu Desktop Bugs (desktop-bugs)
importance: Undecided → Medium
status: New → Incomplete
Revision history for this message
Zoubidoo (zoubidoo) wrote :

Backtrace as requested.

Revision history for this message
Pedro Villavicencio (pedro) wrote :

if you can still reproduce the issue, may you please install the libdbus, evince and libglib2 dbgsym packages and get a new backtrace? the one you submitted is missing some symbols. thanks.

Changed in evince (Ubuntu):
importance: Medium → Low
Revision history for this message
Zoubidoo (zoubidoo) wrote :

The problem went away for a few weeks and then reappeared. Waiting 30 seconds to open a 1 page pdf is not normal. During the hanging, the cpu is idling, so it's not doing some heavy duty calculation.

I have attached a new backtrace with more debug symbols. The program was interrupted with ^C while hanging.

Note that there are still no symbols no libdbus. Which package is it?

I have these available:
$ apt-cache search libdbus*
dbus - simple interprocess messaging system
libdbus-1-3 - simple interprocess messaging system
libdbus-1-dev - simple interprocess messaging system (development headers)
libdbus-glib-1-2 - simple interprocess messaging system (GLib-based shared library)
libdbus-glib-1-2-dbg - simple interprocess messaging system (GLib library debug symbols)
libdbus-glib-1-dev - simple interprocess messaging system (GLib interface)
libdbus-glib-1-doc - simple interprocess messaging system (GLib library documentation)
libdbus-qt-1-1c2 - simple interprocess messaging system (Qt-based shared library)
libdbus-qt-1-dev - simple interprocess messaging system (Qt interface)
libdbusmenu-glib-dev - Menus over DBus shared library
libdbusmenu-glib0 - Menus over DBus shared library for glib
libdbusmenu-gtk-dev - Menus over DBus shared library for GTK
libdbusmenu-gtk0 - Menus over DBus shared library for GTK
libndesk-dbus-glib1.0-cil - CLI implementation of D-Bus (GLib mainloop integration)
libndesk-dbus1.0-cil - CLI implementation of D-Bus
libdbus-1-qt3 - dbus bindings for Qt 3 (backport of the Qt 4 bindings)
libdbus-1-qt3-dev - dbus bindings for Qt 3 (backport of the Qt 4 bindings)
libdbus-java - simple interprocess messaging system (Java implementation)
libdbus-java-doc - simple interprocess messaging system (Java interface documentation)
libdbus-ocaml - OCaml bindings for the D-Bus API
libdbus-ocaml-dev - OCaml bindings for the D-Bus API
libdbus-ruby - Ruby binding for D-Bus
libdbus-ruby1.8 - Ruby 1.8 binding for D-Bus

And this dbg package is already installed:

$ dpkg -l libdbus-glib-1-2-dbg
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Description
+++-===========================-===========================-======================================================================
ii libdbus-glib-1-2-dbg 0.80-4ubuntu1 simple interprocess messaging system (GLib library debug symbols)

Revision history for this message
Zoubidoo (zoubidoo) wrote :

bump

Changed in evince (Ubuntu):
status: Incomplete → New
Revision history for this message
Zoubidoo (zoubidoo) wrote :

Given that this bug has been going on since 9.04 and affects several people could we please increase the importance.

See
https://bugs.launchpad.net/ubuntu/+source/evince/+bug/353454

Zoubidoo (zoubidoo)
summary: - evince hangs on start-up EAGAIN (Resource temporarily unavailable)
+ evince hangs on start-up
Revision history for this message
Zoubidoo (zoubidoo) wrote :

Running dbus-monitor shows events related to evince while evince is hanging. The same event appears repeatedly.

Could someone tell what MediaKeys and evince have to do with each other?

method call sender=:1.601 -> dest=:1.6 serial=29 path=/org/gnome/SettingsDaemon/MediaKeys; interface=org.gnome.SettingsDaemon.MediaKeys; member=GrabMediaPlayerKeys
   string "Evince"
   uint32 1
method call sender=:1.601 -> dest=:1.6 serial=30 path=/org/gnome/SettingsDaemon/MediaKeys; interface=org.gnome.SettingsDaemon.MediaKeys; member=GrabMediaPlayerKeys
   string "Evince"
   uint32 1
method call sender=:1.601 -> dest=:1.6 serial=31 path=/org/gnome/SettingsDaemon/MediaKeys; interface=org.gnome.SettingsDaemon.MediaKeys; member=GrabMediaPlayerKeys
   string "Evince"
   uint32 1
method call sender=:1.601 -> dest=:1.6 serial=32 path=/org/gnome/SettingsDaemon/MediaKeys; interface=org.gnome.SettingsDaemon.MediaKeys; member=GrabMediaPlayerKeys
   string "Evince"
   uint32 1

Revision history for this message
Peter Andrews (pmandrew) wrote :

*Bump* for higher priority. A long delay while opening files is a serious problem and made me unable to use the program in 9.10. The version in 10.04 is significantly better about this (and more stable), but there are still sporadic delays.

Revision history for this message
thephatness (thephatness-launchpad) wrote :

If I run evince in a terminal, it starts up immediately. It hangs when opening a PDF from within or from Nautilus, and closing evince. A warning is sent to the stdout:

** (evince:XXXX): WAfineRNING **: Error registering document: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Running dbus-monitor while it is trying to open the PDF looks like it's hanging on this message:

method call sender=:1.211 -> dest=org.gnome.evince.Daemon serial=12 path=/org/gnome/evince/Daemon; interface=org.gnome.evince.Daemon; member=RegisterDocument

Revision history for this message
dewoller (dewoller) wrote :

Bump.

Revision history for this message
thephatness (thephatness-launchpad) wrote :

Creating the /var/lib/samba/usershares directory seems to have solved this issue for me. I tried this after discovering this line in the ~/.xsession-errors file:

** (gnome-settings-daemon:4650): WARNING **: Could not acquire name
Nautilus-Share-Message: Called "net usershare info" but it failed: 'net usershare' returned error 255: net usershare: cannot open usershare directory /var/lib/samba/usershares. Error No such file or directory
Please ask your system administrator to enable user sharing.

No more hangs from opening PDFs from Nautilus or from within Evince. Oddly enough, it still hangs when opening a PDF that's already opened.

Revision history for this message
thephatness (thephatness-launchpad) wrote :

I take back my last comment. Seems like the issue has went away due to some other change.

Revision history for this message
Zoubidoo (zoubidoo) wrote :

My installation was not running samba or using shares, so this is a separate issue.

Revision history for this message
Justin Lebar (jlebar) wrote :

Making some more noise in this bug. Is there anything we can do to help get this fixed?

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in evince (Ubuntu):
status: New → Confirmed
Revision history for this message
danmb (danmbox) wrote :

The only way I can get out of this bug, when it bites, is to exit my X (and presumably dbus) session and log back in. Really annoying. evince prints all sorts of useless console clutter, but fails to print any useful diagnostics in this case.

Revision history for this message
Scott Ritchie (scottritchie) wrote :

I've been running into this on 12.04. The culprit seems to be utouch.Geis:

Here's what the log looks like when running dbus-monitor. It looks like there's 2 seconds between each one, until I suppose utouch gives up and evince just launches.

method call sender=:1.10 -> dest=org.freedesktop.DBus serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=6 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=8 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=10 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=12 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=14 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=16 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=18 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"
method call sender=:1.10 -> dest=org.freedesktop.DBus serial=20 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.canonical.utouch.Geis'"

Revision history for this message
Scott Ritchie (scottritchie) wrote :

My latest comment is actually bug 898175 -- are there other remaining issues causing evince to hang on startup? If not we can probably close dupe

Revision history for this message
WebBrickSystems (andy-thirtover) wrote : Rolex Sport Model

Hello Customer

Order your replica watch in a simple way and wait for delivery of really amazing quality product. We have money back guarantee, and guarantee the reshipping, if your watch arrive damaged or missing.
Everyone will notice your new expensive-looking watch, but nobody will find out that it is a replica watch. Designed as a genuine one to the tiniest detail replica watch differ only in price.

--------------------------------------------------------------------
My order arrived yesterday via registered mail in good order THE WATCH IS BEAUTIFUL AND EVEN BETTER THAN I EXPECTED.
TUVM
                     Clint Rutherford
--------------------------------------------------------------------

Click here ---> http://kravo.ru

Revision history for this message
penalvch (penalvch) wrote :

Please attach example PDF if this is reproducible in a supported release.

Changed in evince (Ubuntu):
assignee: Ubuntu Desktop Bugs (desktop-bugs) → nobody
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.