[Cdash] No email on failed continuous builds

Julien Jomier julien.jomier at kitware.com
Sat Jun 21 16:10:11 UTC 2008


Trevor,

Bill, Zack and I actually fixed this problem recently and committed to 
both the CDash-1-0 branch and svn head.

I was assuming that the update.xml file was coming first from CTest but 
as it turns out it's coming last (as you pointed out). The current issue 
is that you might get duplicate emails (which is probably better than no 
email). We will be working on this issue in the next few weeks.

If you can try the CDash-1-0 branch that would be great.
Let us know if you find any other issues,

Julien

Trevor Kellaway wrote:
> Julien,
>  
> You may remember some time ago I was looking at why my continuous builds
> weren't sending emails, and I didn't get anywhere. (Note Nightly email
> notification works OK if I opt in for all emails, or just nightly
> breakages).
> 
> I've had another look at this issue (Cdash 1.0), and have got a bit
> further, it appears that the SELECT of the author list for the
> updatefile is not returning any rows, however, if I manually do a mysql
> query it is present.
> 
> Adding some logging code it appears as if it is a timing issue, that the
> author buildid data is not present at the time of the sendemail query.
> This seems bizarre as submit.php invokes ctestparser.php (which should
> log the data) and finally sendemail.php.
> 
> I did a test changing sendemail.php to also query for a previous buildid
> at the same time:
> 
>   // Find the users
>   add_log("buildid='$buildid'","sendemail");
>   $tkauthors = mysql_query("SELECT author FROM updatefile WHERE
> buildid='6874'");
>   $authors = mysql_query("SELECT author FROM updatefile WHERE
> buildid='$buildid'");
>   add_log("tkauthors=".$tkauthors,"sendemail");
>   add_log("authors=".$authors,"sendemail");
>   add_log("rows=".mysql_num_rows($authors),"sendemail");
>   add_log("tkrows=".mysql_num_rows($tkauthors),"sendemail");
>   $tktmp = mysql_fetch_array($authors);
>   add_log("tktmp=".$tktmp,"sendemail");
>   while($authors_array = mysql_fetch_array($authors))
> 
> This produced the following log output:
> 
>  [2008-06-21 16:09:18] (sendemail): Start buildid=6876
>  [2008-06-21 16:09:18] (sendemail): previousbuildid=6875
>  [2008-06-21 16:09:18] (sendemail): test=0=0
>  [2008-06-21 16:09:18] (sendemail): warning=0=0
>  [2008-06-21 16:09:18] (sendemail): error=0=4
>  [2008-06-21 16:09:18] (sendemail): fetching authors
>  [2008-06-21 16:09:18] (sendemail): buildid='6876'
>  [2008-06-21 16:09:18] (sendemail): tkauthors=Resource id #50
>  [2008-06-21 16:09:18] (sendemail): authors=Resource id #51
>  [2008-06-21 16:09:18] (sendemail): rows=0
>  [2008-06-21 16:09:18] (sendemail): tkrows=1
>  [2008-06-21 16:09:18] (sendemail): tktmp=
>  [2008-06-21 16:09:18] (sendemail): End buildid=6876
> 
> Note that the query for the hard coded ID is OK (tkrows=1), but the
> current build query fails (rows=0).
> 
> And FYI, the following errors in the Apache error_log:
> 
>  [Sat Jun 21 16:09:20 2008] [error] [client ...] PHP Notice:  Undefined
> index:  value in .../CDash/ctestparser.php on line 78  [Sat Jun 21
> 16:09:20 2008] [error] [client ...] PHP Notice:  Undefined index:  value
> in .../CDash/ctestparser.php on line 859
> 
> Something odd about this is the log times for ctestparser.php warning
> are 2 seconds *after* the sendemail.php log messages. Is there some log
> buffering going on, or is this really representative of the calling
> order?
> 
> Hmm, a sudden thought, is submit.php invoked for each submitted XML file
> in turn? If so maybe it is file order dependent?
> 
> This is the order the files were pushed in (by ctest 2.4):
> 
>    Uploaded: .../Testing/20080621-1508/Build.xml
>    Uploaded: .../Testing/20080621-1508/Configure.xml
>    Uploaded: .../Testing/20080621-1508/Notes.xml
>    Uploaded: .../Testing/20080621-1508/Test.xml
>    Uploaded: .../Testing/20080621-1508/Update.xml
> 
> Any help gratefully received, as I could really do with getting this
> issue resolved.
> 
>  -Trevor
> 
> _______________________________________________
> Cdash mailing list
> Cdash at public.kitware.com
> http://public.kitware.com/cgi-bin/mailman/listinfo/cdash
> 



More information about the CDash mailing list