Re: [Bulk] Re: Scheduled build always say build not required

Jim Hague <[email protected]> Mon, 3 Apr 2006 23:04:57 +0100
Newsgroups gmane.comp.java.anthill
Message-ID <[email protected]>
On Monday 03 April 2006 21:47, gnugy wrote:
> And I know for a fact that I have made a revision since this date.  When
> I turn debug on the relevant chatter is as follows:
> [...]
> <timestamp> [Thread - AnthillBUildDaemon] DEBUG
> com.urbancode.anthill.adapter.SubversionRepositoryAdapter - Get
> revisions since command: svn log --non-interactive -v --username
> "anthill" --password "anthill" -r "{2006-04-03 13:22:59 -0400}:HEAD"
> svn://localhost/repos/TestApp

You're quite right. There should be something here, logging the start of a new 
revision.

> <timestamp> [Thread - AnthillBuildDaemon] DEBUG
> com.urbancode.anthill.adapter.SubversionRepositoryAdapter - returning
> revisionList
> [...]
> I was looking through the code and noticed that in
> SubversionRepositoryAdapter.parseLogCommandResult() there are alot of
> log.debug() messages not showing that would show up if this for loop
> were to be executed:
>
> for ( String line = br.readLine(); line != null; line = br.readLine() ){
> ... }
>
> where br is a BufferedReader supposedly containing the results from the
> svn log command.  So my guess is that this command isn't returning
> anything or hasn't returned anything when it's results are parsed.
>
> If I manually execute the svn log command I do get results so I'm pretty
> sure it's not the command itself.  I'm wondering if maybe the command hasn't
> yet returned anything when this for loop is executed.

I'd be little surprised (but only a little, mind) if the problem was the 
BufferedReader not returning anything or returning too early. It is supposed 
to wait until end-of-file.

I think there are two other possibilities. One is that the 'svn log' command 
isn't actually returning anything. The other is that the command is returning 
something, but that something is never matching the headerRE regular 
expression.

If you do manage to recompile, and put

			log.debug("Line: " + line);

immediately after the for(){ but before the switch(), that would at least tell 
us which of the above is the case. It might be an idea to add another 
log.debug() before the for(), so you can tell that you have managed to 
recompile/reinstall Anthill successfully, and aren't just looking at the old 
version.

BTW, what OS are you running Anthill on? And which JVM and which version of 
Subversion? I can tell you it works OK on Linux (Debian testing) with IBM JVM 
1.4.2 and Subversion 1.2.3.

Good luck.
-- 
Jim Hague - [email protected]        Never trust a computer you can't lift.