cicku / libproxy

Automatically exported from code.google.com/p/libproxy
GNU Lesser General Public License v2.1
1 stars 0 forks source link

Spawns lots of pxgsettings processes #191

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
When using the gsettings plugin, libproxy seems to spawn one instance of the 
pxgsettings helper per consumer of the library. Like so (sorry for the slightly 
ugly pstree output):

  │   │   │   ├─signon-ui
  │   │   │   │   ├─sh -c /usr/lib/x86_64-linux-gnu/libproxy/0.4.7/pxgsettings org.gnome.system.proxy org.gnome.system.proxy.http org.gnome.s
ystem.proxy.https org.gnome.system.proxy.ftp org.gnome.system.proxy.socks
  │   │   │   │   │   └─pxgsettings org.gnome.system.proxy org.gnome.system.proxy.http org.gnome.system.proxy.https org.gnome.system.proxy.ft
p org.gnome.system.proxy.socks  
  │   │   │   │   │       └─2*[{pxgsettings}]

If glib-networking is using its libproxy backend then you can end up with a 
*lot* of these. And Qt is about to grow its own, which will mean that Qt 
programs will start triggering this too.

Would it be possible to remove this helper and replace it by, say, watching 
directly over D-Bus or reimplementing pxgsettings as a D-Bus helper so that 
only one instance needs to run?

I'm willing to help implementing here if you could advise me what you consider 
to be the best approach.

Original issue reported on code.google.com by i...@orangesquash.org.uk on 26 Apr 2013 at 12:28

GoogleCodeExporter commented 8 years ago
Although it strikes me that you probably chose this way to keep the 
dependencies of libproxy itself as minimal as possible, so I don't know what an 
alternative would look like.

Perhaps an optional dependency on libdbus or similar? Or perhaps just not 
caring about this?

Original comment by i...@orangesquash.org.uk on 26 Apr 2013 at 2:26

GoogleCodeExporter commented 8 years ago
I do have an idea for how to solve this, but it is very low in the priority 
list. The amount of system resources used by each pxgsettings instance is 
trivial once you have the first one running.

Original comment by nathan...@themccallums.org on 26 Apr 2013 at 2:45

GoogleCodeExporter commented 8 years ago
I'd argue to mark this as duplicate of bug 120: if the entire libproxy system 
is a dbus-service, obviously, pxgsettings would be launched only once as well.

Original comment by dominiqu...@gmail.com on 26 Aug 2013 at 6:18