Bug 19520 - [ExternalTools] Performance suffers with console log ouput enabled
Summary: [ExternalTools] Performance suffers with console log ouput enabled
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Ant (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P2 major (vote)
Target Milestone: 2.1 M4   Edit
Assignee: Jared Burns CLA
QA Contact:
URL:
Whiteboard:
Keywords: ui
Depends on:
Blocks:
 
Reported: 2002-06-06 13:52 EDT by Sonia Dimitrov CLA
Modified: 2002-11-25 21:25 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sonia Dimitrov CLA 2002-06-06 13:52:14 EDT
Running an ant script with console log output enabled requires much more time 
run a script (at a minimum 3 times longer).

Steps to reproduce:

NOTE:
  -this requires cvs on the path
  -pass in an empty directory as the value for the install property, i.e -
Dinstall=c:\temp

1.  Invoke ant on the script below with console log output disabled and 
enabled.  Observe difference in time required to run the script (requires cvs 
on path):

 <?xml version="1.0" encoding="UTF-8" ?> 
- <!--  Fetch script for feature@org.eclipse.jdt-feature 
  --> 
- <project name="FetchScript" default="fetch" basedir=".">
  <property name="quiet" value="true" /> 
- <target name="fetch">
  <mkdir dir="${install}/features" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/features" package="org.eclipse.jdt-feature" tag="v20020601a" 
quiet="${quiet}" /> 
  <mkdir dir="${install}/plugins" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt" tag="v20020601a" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt.core" tag="v_254" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt.debug.ui" tag="v20020531" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt.debug" tag="v20020531" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt.junit" tag="v20020601a" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt.launching" tag="v20020531" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt.ui" tag="v20020601a" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.junit" tag="v20020601a" 
quiet="${quiet}" /> 
  <cvs cvsRoot=":pserver:anonymous@dev.eclipse.org:/home/eclipse" 
dest="${install}/plugins" package="org.eclipse.jdt.doc.user" tag="v20020601" 
quiet="${quiet}" /> 
  </target>
</project>
Comment 1 Nick Edgar CLA 2002-06-06 14:00:53 EDT
Does your script generate a lot of output?

I believe we currently siphon off output a character at a time.
Also, there is a delay between bursts of siphoning.
Both of these could reduce performance.

Comment 2 Sonia Dimitrov CLA 2002-06-06 14:06:56 EDT
Yes, there is a lot of output.
Comment 3 Chris McLaren CLA 2002-06-11 17:16:06 EDT
this should improve with my changes to buffer the input streams. it is worth 
looking at what is happening in LogConsoleDocument.append(..) as well.
Comment 4 Darin Wright CLA 2002-11-14 15:02:28 EST
Using the new launch config support (which will become the only way to run 
scripts), the debug console is used. This appears to fix the performance 
problems (noting bug 25437).
Comment 5 Darin Wright CLA 2002-11-14 15:02:47 EST
Please verify, Jared.
Comment 6 Jared Burns CLA 2002-11-25 21:25:41 EST
Verified.