river-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gregg Wonderly <gr...@wonderly.org>
Subject Re: Decision process for a Modular build tool
Date Wed, 30 Apr 2014 21:11:47 GMT

On Apr 23, 2014, at 8:01 AM, Peter <jini@zeus.net.au> wrote:

> ----- Original message -----
>> 
>> On Apr 22, 2014, at 7:47 PM, Peter Firmstone
>> <peter.firmstone@zeus.net.au> wrote:
>> 
>>> 
>>> 
>>> From: Peter Firmstone <peter.firmstone@zeus.net.au>
>>> Subject: Decision process for a Modular build tool
>>> Date: April 22, 2014 at 7:40:29 PM EDT
>>> To: dev@apache.river.org
>>> Reply-To: Peter Firmstone <peter.firmstone@zeus.net.au>
>>> 
>>> 
>>> I started qa-refactor with the intent of fixing latent bugs, an
>>> unintentional benefit is significantly reduced processing times,
>>> contention and increased scalability. 
>>> 
>>> Changes in timing exposed more bugs. 
>>> 
>>> Up until recently an occassional build failure would be experienced
>>> due to classdep only partially writing a dep file, resulting in
>>> ClassNotFoundException during testing. Knowing that
>>> RFC3986URLClassLoader is much faster resolving classes than
>>> URLClassLoader, I thought, I'd try using it in ClassDep. 
>>> 
>>> Guess what the result was? That's right lot's more
>>> ClassNotFoundException's 
>>> 
>>> 
>> 
>> That seems kind of odd.   Since ClassDep is single-threaded (it’s
>> basically a command line utility after all), how would faster class path
>> resolution have any impact on the output file?  
> 
> Ok, fair call, ClassDep has a bug, I'm not sure of the exact cause. 

I would suggest just adding a call to System.out.flush() at the end of main() and even System.out.close()
just because you may be using a broken library that is not successfully flushing and closing.
 Look at the size of the files that are output.  Are they multiples of some power of 2 that
would be like a block write size?  That would indicate that blocks are being written as a
blocks worth of output is created.

Gregg Wonderly


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message