sleduc / weechat-xmpp

A fork of the jabber plugin for weechat
21 stars 14 forks source link

sometimes it Using 100% cpu #6

Open wxg4net opened 8 years ago

wxg4net commented 8 years ago

when i use strace with weechat's pid it show me log as follows:

fcntl(42, F_GETFD) = 0 poll([{fd=5, events=POLLIN}, {fd=9, events=POLLIN}, {fd=11, events=POLLIN}, {fd=0, events=POLLIN}, {fd=29, events=POLLIN}, {fd=22, events=POLLIN}, {fd=27, events=POLLIN}, {fd=25, events=POLLIN}, {fd=36, events=POLLIN}, {fd=42, events=POLLIN}], 10, 5) = 1 ([{fd=42, revents=POLLIN}]) read(42, "", 5) = 0 read(42, "", 5) = 0 fcntl(5, F_GETFD) = 0 fcntl(9, F_GETFD) = 0 fcntl(11, F_GETFD) = 0 fcntl(0, F_GETFD) = 0 fcntl(29, F_GETFD) = 0 fcntl(22, F_GETFD) = 0 fcntl(27, F_GETFD) = 0 fcntl(25, F_GETFD) = 0 fcntl(36, F_GETFD) = 0 fcntl(42, F_GETFD) = 0 poll([{fd=5, events=POLLIN}, {fd=9, events=POLLIN}, {fd=11, events=POLLIN}, {fd=0, events=POLLIN}, {fd=29, events=POLLIN}, {fd=22, events=POLLIN}, {fd=27, events=POLLIN}, {fd=25, events=POLLIN}, {fd=36, events=POLLIN}, {fd=42, events=POLLIN}], 10, 5) = 1 ([{fd=42, revents=POLLIN}]) read(42, "", 5) = 0 read(42, "", 5) = 0 fcntl(5, F_GETFD) = 0 fcntl(9, F_GETFD) = 0 fcntl(11, F_GETFD) = 0 fcntl(0, F_GETFD) = 0 fcntl(29, F_GETFD) = 0 fcntl(22, F_GETFD) = 0 fcntl(27, F_GETFD) = 0 fcntl(25, F_GETFD) = 0 fcntl(36, F_GETFD) = 0 fcntl(42, F_GETFD) = 0 poll([{fd=5, events=POLLIN}, {fd=9, events=POLLIN}, {fd=11, events=POLLIN}, {fd=0, events=POLLIN}, {fd=29, events=POLLIN}, {fd=22, events=POLLIN}, {fd=27, events=POLLIN}, {fd=25, events=POLLIN}, {fd=36, events=POLLIN}, {fd=42, events=POLLIN}], 10, 4) = 1 ([{fd=42, revents=POLLIN}]) read(42, "", 5) = 0 read(42, "", 5) = 0 fcntl(5, F_GETFD) = 0 fcntl(9, F_GETFD) = 0 fcntl(11, F_GETFD) = 0 fcntl(0, F_GETFD) = 0 fcntl(29, F_GETFD) = 0 fcntl(22, F_GETFD) = 0 fcntl(27, F_GETFD) = 0 fcntl(25, F_GETFD) = 0 fcntl(36, F_GETFD) = 0 fcntl(42, F_GETFD) = 0 poll([{fd=5, events=POLLIN}, {fd=9, events=POLLIN}, {fd=11, events=POLLIN}, {fd=0, events=POLLIN}, {fd=29, events=POLLIN}, {fd=22, events=POLLIN}, {fd=27, events=POLLIN}, {fd=25, events=POLLIN}, {fd=36, events=POLLIN}, {fd=42, events=POLLIN}], 10, 1) = 1 ([{fd=42, revents=POLLIN}]) read(42, "", 5) = 0 read(42, "", 5)

sleduc commented 8 years ago

Hello,

I have never seen such a behaviour with this plugin. I am not sure what would be the cause of this polling (probably the loop in xmpppy which is trying to retrieve new data from the server). In fact I only tried to add the support for MUC in this plugin, so I do not know exactly how everything works. Do you experience this kind of behaviour with the upstream plugin ? https://weechat.org/scripts/source/jabber.py.html/

If yes they might be more able to help on this issue than me :)

mtbc commented 6 years ago

I have see the upstream jabber.py (changelog last entry is 2013-09-30 for v1.6) start to sit on the CPU and stay there. It works fine for a while first. I connect to talk.google.com.