CDash:Design: Difference between revisions
No edit summary |
|||
Line 14: | Line 14: | ||
= Daily Updates = | = Daily Updates = | ||
Added in CDash 1.0, daily updates from the repository are stored in the database (instead of polling the CVS/SVN server every time the page was accessed. | Added in CDash 1.0, daily updates from the repository are stored in the database (instead of polling the CVS/SVN server every time the page was accessed. | ||
The first build of the day triggers the daily updates from the SVN/CVS repository. If the webserver supports PHP_CURL then the request is done asynchronously using curl (calling the dailyupdatescurl.php page), otherwise the request is done synchronously and requires the client to wait until the request is done. | |||
The SQL tables, dailyupdate and dailyupdatefile are used to store the nightly updates. |
Revision as of 17:01, 5 May 2008
Test Timing
Added in CDash 1.0. CDash supports timing defects for tests. CDash keeps in the database a current weighted average of the mean and standard deviation for each test time for each build. In order to keep the computation as light as a process as possible, the following formula is used, involving only the previous build.
newMean = (1-alpha)*oldMean + alpha*currentTime newSD = sqrt((1-alpha)*SD*SD + alpha*(currentTime-newMean)* (currentTime-newMean)
A test is defined as failing if it verifies the following:
if previousSD < thresholdSD then previousSD = thresholdSD. if currentTime > previousMean*multiplier*previousSD.
One can notice that alpha defines the current “window” for the computation. By default alpha is set to 0.3.
Daily Updates
Added in CDash 1.0, daily updates from the repository are stored in the database (instead of polling the CVS/SVN server every time the page was accessed.
The first build of the day triggers the daily updates from the SVN/CVS repository. If the webserver supports PHP_CURL then the request is done asynchronously using curl (calling the dailyupdatescurl.php page), otherwise the request is done synchronously and requires the client to wait until the request is done.
The SQL tables, dailyupdate and dailyupdatefile are used to store the nightly updates.