brettpoole / growl

Automatically exported from code.google.com/p/growl
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Growl hits very high cpu #399

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
A lot of people are running into an issue where they see high CPU. So far there 
are no steps to reproduce.

Original issue reported on code.google.com by ch...@growl.info on 5 Dec 2011 at 10:08

GoogleCodeExporter commented 8 years ago
Related pastes.

http://pastebin.com/UFFBFfR9
http://dl.dropbox.com/u/177285/growl_sample.txt
http://pastebin.com/cf45JukJ
http://pastebin.com/Jmts7qYA
http://pastie.org/private/gilrwbz7rkgbryfty30uq
https://gist.github.com/1424326
http://up.stewf.com/0N1X0545021R1M1e1T3s
https://gist.github.com/1433466

Original comment by ch...@growl.info on 5 Dec 2011 at 10:52

GoogleCodeExporter commented 8 years ago
http://pastebin.com/PKvHzgbK

Original comment by ch...@growl.info on 6 Dec 2011 at 12:27

GoogleCodeExporter commented 8 years ago
http://pastebin.com/kr6Xvkr3
http://pastie.org/private/wozh2g5j4tpsqnoyjkjrkq

No rollup, no recent notifications in the list. Unfortunately my browser 
coughed and I lost the other samples...

Original comment by d235...@gmail.com on 16 Dec 2011 at 1:43

GoogleCodeExporter commented 8 years ago

Original comment by rarich...@gmail.com on 23 Dec 2011 at 1:45

GoogleCodeExporter commented 8 years ago
Adding more samples.

Original comment by ch...@growl.info on 26 Dec 2011 at 6:22

Attachments:

GoogleCodeExporter commented 8 years ago
Issue 416 has been merged into this issue.

Original comment by rarich...@gmail.com on 8 Jan 2012 at 3:50

GoogleCodeExporter commented 8 years ago
I've just come across this issue.  In my case it seems linked to a skype 
message in my logs...

08/01/2012 19:09:05.679 Skype: Got disconnected: Error 
Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed out" 
UserInfo=0x13ed4df0 {NSLocalizedDescription=Read operation timed out}

08/01/2012 19:09:05.679 Skype: <GrowlGNTPNotificationAttempt: 0x13eab980> 
failed because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation 
timed out" UserInfo=0x13ed4df0 {NSLocalizedDescription=Read operation timed out}

Followed by Growl Crashing when I tried to open the application, crash report 
attached.

08/01/2012 19:10:57.797 Growl: -[GrowlPreferencePane loadWindow]: failed to 
load window nib file 'GrowlPref'.

08/01/2012 19:11:04.162 [0x0-0x34034].com.Growl.GrowlHelperApp: HIToolbox: 
failed to copy resource URL for framework bundle.

08/01/2012 19:11:04.162 [0x0-0x34034].com.Growl.GrowlHelperApp: HIToolbox is 
damaged with error 4294962336 and TTheme instance 0. Aborting...

08/01/2012 19:11:05.894 com.apple.launchd.peruser.501: 
([0x0-0x34034].com.Growl.GrowlHelperApp[397]) Job appears to have crashed: 
Abort trap: 6

Original comment by ch...@jalakai.co.uk on 8 Jan 2012 at 7:23

Attachments:

GoogleCodeExporter commented 8 years ago
Do what you can here, but if it's a bigger change to fix it we can talk about 
whether it should be in 1.3.3 or 1.4.

Original comment by ch...@growl.info on 10 Jan 2012 at 1:23

GoogleCodeExporter commented 8 years ago
Just adding to what #7 said... I see similar things in the logs and Skype, with 
Growl at 103% CPU, but I'm also seeing SQLite errors. I don't know which (if 
either) might be causing the CPU spike:

1/13/12 7:14:10.332 AM Skype: <GrowlGNTPNotificationAttempt: 0x14e4a40> failed 
because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed 
out" UserInfo=0x10ae53a0 {NSLocalizedDescription=Read operation timed out}
1/13/12 7:24:14.387 AM Skype: <GrowlGNTPNotificationAttempt: 0x17fa0af0> failed 
because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed 
out" UserInfo=0x17f57bc0 {NSLocalizedDescription=Read operation timed out}
1/13/12 7:28:50.635 AM Growl: Core Data: annotation: -executeRequest: 
encountered exception = Updating max pk failed:  with userInfo = {
    NSSQLiteErrorDomain = 14;
}
1/13/12 7:28:50.635 AM Growl: Core Data: annotation: -executeRequest: 
encountered exception = Updating max pk failed:  with userInfo = {
    NSSQLiteErrorDomain = 14;
}
1/13/12 7:28:50.736 AM Growl: Core Data: annotation: -executeRequest: 
encountered exception = Updating max pk failed:  with userInfo = {
    NSSQLiteErrorDomain = 14;
}
1/13/12 7:28:55.545 AM Growl: Unresolved error Error Domain=NSCocoaErrorDomain 
Code=134030 "The operation couldn\U2019t be completed. (NSCocoaErrorDomain 
error 134030.)" UserInfo=0x7fcbed236e50 {NSSQLiteErrorDomain=14, 
NSUnderlyingException=Updating max pk failed: }, {
    NSSQLiteErrorDomain = 14;
    NSUnderlyingException = "Updating max pk failed: ";
}
1/13/12 7:29:32.665 AM Skype: <GrowlGNTPNotificationAttempt: 0x1483eb0> failed 
because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed 
out" UserInfo=0x9545450 {NSLocalizedDescription=Read operation timed out}
1/13/12 7:31:31.040 AM Skype: <GrowlGNTPNotificationAttempt: 0x2cc6aa0> failed 
because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed 
out" UserInfo=0x953b0c0 {NSLocalizedDescription=Read operation timed out}
1/13/12 7:33:28.318 AM Skype: <GrowlGNTPNotificationAttempt: 0x2b3ab80> failed 
because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed 
out" UserInfo=0x17f5e7c0 {NSLocalizedDescription=Read operation timed out}
1/13/12 7:36:49.798 AM Growl: Core Data: annotation: -executeRequest: 
encountered exception = Updating max pk failed:  with userInfo = {
    NSSQLiteErrorDomain = 14;
}
1/13/12 7:36:49.798 AM Growl: Core Data: annotation: -executeRequest: 
encountered exception = Updating max pk failed:  with userInfo = {
    NSSQLiteErrorDomain = 14;
}
1/13/12 7:36:49.899 AM Growl: Core Data: annotation: -executeRequest: 
encountered exception = Updating max pk failed:  with userInfo = {
    NSSQLiteErrorDomain = 14;
}
1/13/12 7:36:52.902 AM Growl: Unresolved error Error Domain=NSCocoaErrorDomain 
Code=134030 "The operation couldn\U2019t be completed. (NSCocoaErrorDomain 
error 134030.)" UserInfo=0x7fcbed652080 {NSSQLiteErrorDomain=14, 
NSUnderlyingException=Updating max pk failed: }, {
    NSSQLiteErrorDomain = 14;
    NSUnderlyingException = "Updating max pk failed: ";
}
1/13/12 7:40:26.066 AM Skype: <GrowlGNTPNotificationAttempt: 0x16101d0> failed 
because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed 
out" UserInfo=0x2a5b8c0 {NSLocalizedDescription=Read operation timed out}
1/13/12 7:40:38.313 AM Skype: <GrowlGNTPNotificationAttempt: 0x1502c8b0> failed 
because Error Domain=GCDAsyncSocketErrorDomain Code=4 "Read operation timed 
out" UserInfo=0x10aaeb30 {NSLocalizedDescription=Read operation timed out}

Original comment by mdesjard...@burnsidedigital.com on 13 Jan 2012 at 1:19

GoogleCodeExporter commented 8 years ago
I’ve experienced this as well. I have no insight into why this is happening, 
but here’s a sample from Activity Monitor. Perhaps it will help.

Original comment by jhamdo...@gmail.com on 15 Jan 2012 at 9:29

Attachments:

GoogleCodeExporter commented 8 years ago
Issue 422 has been merged into this issue.

Original comment by dan...@growl.info on 17 Jan 2012 at 5:30

GoogleCodeExporter commented 8 years ago
This looks like there might be more than one hang.  The hang in 
[GrowlRegisterGNTPPacket applicationIconData]  (in Growl) has been looked into, 
and for the time being, our call to dataWithContentsOfURL has been removed.  
However, this will break (for the time being) url based icons for both 
notifications and applications.  We will need to come up with an asynchronous 
way of handling remote data that might not be reliable, this will be beyond the 
scope of 1.3.x, and given 1.4's present plate, probably beyond it as well.

Original comment by dan...@growl.info on 17 Jan 2012 at 5:37

GoogleCodeExporter commented 8 years ago
Just a stupid BFU's note: I'm experiencing this problem too (unexpected massive 
CPU usage by Growl), and it's definitely related to Skype in my case. 
Quit/Restart Skype always helps and Growl calms down.

I updated the Skype framework manually as hinted on Growl's site.

Original comment by pixycz on 20 Jan 2012 at 12:49

GoogleCodeExporter commented 8 years ago
Just FYI: I updated Skype to the latest beta version 5.5.0.2069 and it seems 
that it fixed this high cpu problem.

Original comment by nebol...@gmail.com on 20 Jan 2012 at 6:50

GoogleCodeExporter commented 8 years ago
+1 for that, upgrade to latest Skype beta - no CPU spikes anymore…

Original comment by oliver.gierke@me.com on 21 Jan 2012 at 10:05

GoogleCodeExporter commented 8 years ago
Sorry for misinformation in my previous comment, just ran into this problem 
again with the latest Skype beta.

Original comment by nebol...@gmail.com on 26 Jan 2012 at 8:48

GoogleCodeExporter commented 8 years ago
Attaching Growl sample when this happens. Seems related to Skype. I have Skype 
2.8.0.866 with manually updated Growl framework.
Restarting Skype solves the CPU issue.

Really hopes this will be solved with 1.3.3 as indicated.

Original comment by fred...@aminoff.eu on 27 Jan 2012 at 9:37

Attachments:

GoogleCodeExporter commented 8 years ago
Just had this problem happen now with 1.3.3 and Skype 5.3. So the problem is 
definitely *not* solved.

Original comment by thephatm...@gmail.com on 5 Feb 2012 at 2:40

GoogleCodeExporter commented 8 years ago

Original comment by ch...@growl.info on 7 Feb 2012 at 11:32

GoogleCodeExporter commented 8 years ago
I have the same issue with Growl but although I have Skype on my Mac, I never 
have it running.

Original comment by phil...@millsmeyer.com on 11 Feb 2012 at 1:36

GoogleCodeExporter commented 8 years ago
Here are some more samples:

http://tinypaste.com/706d7558
http://tinypaste.com/7219274d
http://tinypaste.com/9fcbfaea

Original comment by ch...@growl.info on 12 Feb 2012 at 4:52

GoogleCodeExporter commented 8 years ago
not all of these are the same issue, the samples from 21 are fixed

Original comment by rarich...@gmail.com on 7 Mar 2012 at 5:35

GoogleCodeExporter commented 8 years ago
Does anybody hit this while running Adium? On my case I hit the issue because 
Adium opens too many TCP connections to the Growl process, and Growls starts 
looping eating 100% CPU when accept() returns EMFILE errors. Stopping Adium 
solves the problem.

I suggest people to check the output of 'lsof -i :23053' when hitting the 
issue, to see how many open TCP connections are open to Growl. More exactly, 
the command:

# lsof -i :23053 | cut -d' ' -f1 | sort | uniq -c

On my case, I have:

29 Adium
   1 COMMAND
  42 Growl

And Adium is running for only 5 minutes. I'm sure Growl will start eating CPU 
again, once it hits the 256 open-files limit.

Original comment by ehabkost on 31 Mar 2012 at 6:20

GoogleCodeExporter commented 8 years ago
I've been having this issue for a while. I notice it because the fan in my 
macbook pro goes crazy loud. I have the latest skype beta but as mentioned in 
comment 23, also Adium. I will try to monitor and take a sample next time.

Original comment by bergon...@gmail.com on 5 May 2012 at 11:43

GoogleCodeExporter commented 8 years ago
As promised, here's a sample taken from Activity Monitor while Growl was going 
crazy at about 103% CPU. I tried to shut down Adium while this was happening 
and Growl immediately calmed down, so I think this is already good proof that 
Adium is the culprit. Hope this helps solving the issue.

Original comment by bergon...@gmail.com on 6 May 2012 at 10:19

Attachments:

GoogleCodeExporter commented 8 years ago
Thanks for the sample. We actually figured out the cause on it, we're working 
on the fix.

Original comment by ch...@growl.info on 6 May 2012 at 11:47

GoogleCodeExporter commented 8 years ago
This is taking a lot more work than we originally thought. Moving to 1.4.1 so 
that we can get 1.4 out with all of its fixes.

Original comment by ch...@growl.info on 23 May 2012 at 4:11

GoogleCodeExporter commented 8 years ago
This makes the app useless.  I can't use it and regret buying it.  I'll hold 
the negative review for 1 week as I wait for a patch.  Thanks.

Original comment by JacobTho...@gmail.com on 31 May 2012 at 11:22

GoogleCodeExporter commented 8 years ago
It's going to take longer than 1 week to resolve this issue. We've had our lead 
developer working on this issue, and this issue alone, for months now. Growl 
1.4 has been submitted for release without the fix for this issue, as it's 
going to take longer still to resolve it once and for all.

Original comment by ch...@growl.info on 31 May 2012 at 11:27

GoogleCodeExporter commented 8 years ago
Very disappointed. I remember (please correct me if I am wrong) that the reason 
behind charging for Growl was to aid development. It seems like a lot of us 
bought this in good faith - Growl used to be an excellent little add-on to OS 
X.  Now you tell us you have a serious bug that you can't fix in a timely 
manner, despite new investment?  If you've been working on it 'for months' why 
not spend some time providing an easy temporary roll-back to the previous 
(FOSS) version of growl for your users, which from memory had no such issues? 

Original comment by irbda...@gmail.com on 5 Jun 2012 at 1:21

GoogleCodeExporter commented 8 years ago
We're having to rethink and rewrite the ENTIRE networking stack in order to 
address a design flaw that it has. We have to do this while keeping backwards 
compatibility with the 1.3.x SDK. So rather than speed through that, we're 
designing it correctly this time and making sure that it works correctly. It 
would be irresponsible of us to put out something half baked that had other, 
even weirder issues.

Growl 1.2.2 is available, along with other previous versions of Growl as well. 
Source is available. Anyone who wants to can go grab that version. You are 
seriously misinformed if you believe this is not the case.

Original comment by ch...@growl.info on 5 Jun 2012 at 3:15

GoogleCodeExporter commented 8 years ago

Original comment by ch...@growl.info on 21 Jun 2012 at 3:21

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
The networking stack at this point has been mostly rewritten, and the file 
pointers seem to always be going away properly now.  Subscription is still in 
need of some fixes to work properly, but forwarding and the framework seem to 
be working properly.  More testing (and likely some bug fixes) is needed before 
I will call this fully fixed.  We are working on it, and it will be fixed in 
2.0 which will ship as soon as we can get the new stack and all of 2.0's other 
new features and improvements tested.  

Original comment by dan...@growl.info on 16 Jul 2012 at 7:55

GoogleCodeExporter commented 8 years ago
Issue 320 has been merged into this issue.

Original comment by ch...@growl.info on 18 Jul 2012 at 5:09

GoogleCodeExporter commented 8 years ago
We have zero reports of this problem with the Growl 2 beta. i'm going to mark 
it as fixed in source.

Original comment by ch...@growl.info on 23 Aug 2012 at 2:41

GoogleCodeExporter commented 8 years ago
Cool, is there a chance to get our hands on the beta?

Original comment by oliver.gierke@me.com on 23 Aug 2012 at 7:34

GoogleCodeExporter commented 8 years ago
We have over 300 beta testers, at this point we're full up. :)

Original comment by ch...@growl.info on 23 Aug 2012 at 8:53

GoogleCodeExporter commented 8 years ago
Growl 2 is released, marking these as fixed.

Original comment by ch...@growl.info on 20 Sep 2012 at 3:16

GoogleCodeExporter commented 8 years ago
I just encountered a "HIToolbox is damaged with error" with Growl 2.0.1.

Original comment by gha...@gmail.com on 11 Jan 2013 at 6:11

GoogleCodeExporter commented 8 years ago
Please open a new ticket ghazel. This issue is for high CPU and had a specific 
cause and resolution.

Original comment by ch...@growl.info on 11 Jan 2013 at 6:25