This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 173151 - [68cat][ruby][rake] Migrate:db peggs Dual CPU at 100%
Summary: [68cat][ruby][rake] Migrate:db peggs Dual CPU at 100%
Status: RESOLVED INCOMPLETE
Alias: None
Product: ruby
Classification: Unclassified
Component: Rake (show other bugs)
Version: 6.x
Hardware: PC Linux
: P3 blocker (vote)
Assignee: Erno Mononen
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-09-26 15:47 UTC by esmithbss
Modified: 2009-10-07 10:26 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Profiler Trace from CPU 100% utilization. (19.03 KB, application/octet-stream)
2009-09-26 15:49 UTC, esmithbss
Details

Note You need to log in before you can comment on or make changes to this bug.
Description esmithbss 2009-09-26 15:47:51 UTC
[200909221401]
[JDK 1.6.16-01 Sun]

Executing rake migrate:db from within the IDE peggs my dual CPU system at 100% on both processors for a number of
seconds before the rake task  can begin.  Once the task begins there is a little fluctuation (1 CPU drops to 90%) for a
few moments.

I've attached an NPS recorded during the rake processing.
Comment 1 esmithbss 2009-09-26 15:49:27 UTC
Created attachment 88398 [details]
Profiler Trace from CPU 100% utilization.
Comment 2 esmithbss 2009-09-26 15:50:57 UTC
Multiple executions result in same performance problem so this appears to be reproducible.

Migration file in question does two things:

1) drop a column from a table
2) change the name of a column within the same table.
Comment 3 Erno Mononen 2009-09-29 10:26:45 UTC
As in issue 173226 here it also looks like it's the external process that is pegging the CPUs - can you please do the 
same here, i.e. run the exact same command from the CLI and see how that performs?
Comment 4 esmithbss 2009-09-30 06:17:52 UTC
When I run the command from the IDE, it takes a horendous amount of time, but my CPU's aren't pegged.  They are only
running at about 50%.

I don't know how the system is calling it's child processes, but NetBeans is behaving as if it isn't doing a spawn with
a wait on the children, or a spawn with an async listener for the response, but instead is doing a spawn which redirects
System.out and System.err to internal queues and has a very tight loop listening to the queues.
Comment 5 Erno Mononen 2009-10-02 09:56:08 UTC
It might be that the -client switch makes the difference here too; can you please check that?
Comment 6 Erno Mononen 2009-10-07 10:26:59 UTC
When you have the chance, can you please confirm whether the -client switch made any difference here. Thanks.