Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flooding of "get-updates" every second #322

Closed
tliron opened this issue May 2, 2019 · 6 comments
Closed

Flooding of "get-updates" every second #322

tliron opened this issue May 2, 2019 · 6 comments

Comments

@tliron
Copy link

tliron commented May 2, 2019

I'm at my wits end with this issue! Basically every second something is calling PackageKit with a "get-updates".

It's on a newly installed Fedora 30 system with PackageKit 1.1.12, though I also had the same issue with Fedora 29 (which is one reason that I upgraded). I do not have it with other Fedora 29 and 30 systems (I have about 10!) so there must be something special about this box.

I know it's not GNOME Software causing this -- I already set it to not update. But I don't know how to figure out who is calling. Is there something in DBus I can use to trace it, perhaps? Here's what I have:

journalctl shows this:

May 02 17:40:28 sapir PackageKit[19649]: get-updates transaction /6892_bdddebde from uid 1000 finished with success after 32ms

Using pkmon:

Transactions:
 1      /6980_bcebdcca
/6980_bcebdcca  allow_cancel 1
/6980_bcebdcca  percentage   -1
/6980_bcebdcca  role         get-updates
/6980_bcebdcca  status       setup
/6980_bcebdcca  percentage   39
/6980_bcebdcca  percentage   89
/6980_bcebdcca  percentage   90
/6980_bcebdcca  percentage   91
/6980_bcebdcca  percentage   100
/6980_bcebdcca  status       finished
/6980_bcebdcca  exit code: success

Using dbus-monitor --system:

signal time=1556837032.129953 sender=:1.3112 -> destination=(null destination) serial=60603 path=/7096_cddedeeb; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
   string "org.freedesktop.PackageKit.Transaction"
   array [
      dict entry(
         string "Percentage"
         variant             uint32 100
      )
   ]
   array [
   ]
signal time=1556837032.129972 sender=:1.3112 -> destination=(null destination) serial=60604 path=/7096_cddedeeb; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
   string "org.freedesktop.PackageKit.Transaction"
   array [
      dict entry(
         string "Status"
         variant             uint32 18
      )
   ]
   array [
   ]
signal time=1556837032.132521 sender=:1.3112 -> destination=(null destination) serial=60605 path=/7096_cddedeeb; interface=org.freedesktop.PackageKit.Transaction; member=Finished
   uint32 1
   uint32 32
signal time=1556837032.132533 sender=:1.3112 -> destination=(null destination) serial=60606 path=/org/freedesktop/PackageKit; interface=org.freedesktop.PackageKit; member=TransactionListChanged
   array [
   ]

@hughsie
Copy link
Collaborator

hughsie commented May 3, 2019

if you do "killall gnome-software" do the events stop? Can you find the name of ":1.3112" in d-feet?

@tliron
Copy link
Author

tliron commented May 3, 2019

killall gnome-software doesn't work because gnome-software is not running. :)

":1.3112" in this case is "org.freedesktop.PackageKit". It is sending the results (asynchronously) as property changes to transactions.

@hughsie
Copy link
Collaborator

hughsie commented May 7, 2019

uid 1000

I guess this means it's something in your user account, rather than something running as root. Maybe check what's running at startup compared to the other computers?

@tliron
Copy link
Author

tliron commented May 7, 2019

Good catch with the uid, this really helped me discover the issue. :)

So, it ended up being Byobu. Specifically, its default configuration (at least on Fedora) uses this line in updates_available for its status notification, which indeed keeps getting updated every second. When I exited Byobu the log flooding stopped.

But, now I have a question: Is Byobu doing the right thing here with PackageKit? Is it reasonable to do pkcon get-updates every second? If not, do you have a better suggestion?

@hughsie
Copy link
Collaborator

hughsie commented May 7, 2019

Is Byobu doing the right thing here with PackageKit

No, it's a really dumb way to do it :) The smart way is do GetUpdates on coldplug and then watch for the UpdatesChanged signal.

@hughsie hughsie closed this as completed May 7, 2019
@tliron
Copy link
Author

tliron commented May 7, 2019

Thank you! I will open a bug on Byobu and direct them here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants