Keep track of the exact build start/stop times
This commit is contained in:
		
							parent
							
								
									dadfddfa7c
								
							
						
					
					
						commit
						b07060688a
					
				
					 3 changed files with 8 additions and 2 deletions
				
			
		|  | @ -1347,6 +1347,7 @@ void DerivationGoal::tryToBuild() | ||||||
|             case rpAccept: |             case rpAccept: | ||||||
|                 /* Yes, it has started doing so.  Wait until we get
 |                 /* Yes, it has started doing so.  Wait until we get
 | ||||||
|                    EOF from the hook. */ |                    EOF from the hook. */ | ||||||
|  |                 result.startTime = time(0); // inexact
 | ||||||
|                 state = &DerivationGoal::buildDone; |                 state = &DerivationGoal::buildDone; | ||||||
|                 return; |                 return; | ||||||
|             case rpPostpone: |             case rpPostpone: | ||||||
|  | @ -1424,6 +1425,7 @@ void DerivationGoal::buildDone() | ||||||
|     debug(format("builder process for ‘%1%’ finished") % drvPath); |     debug(format("builder process for ‘%1%’ finished") % drvPath); | ||||||
| 
 | 
 | ||||||
|     result.timesBuilt++; |     result.timesBuilt++; | ||||||
|  |     result.stopTime = time(0); | ||||||
| 
 | 
 | ||||||
|     /* So the child is gone now. */ |     /* So the child is gone now. */ | ||||||
|     worker.childTerminated(this); |     worker.childTerminated(this); | ||||||
|  | @ -2108,6 +2110,8 @@ void DerivationGoal::startBuilder() | ||||||
|     /* Create a pipe to get the output of the builder. */ |     /* Create a pipe to get the output of the builder. */ | ||||||
|     builderOut.create(); |     builderOut.create(); | ||||||
| 
 | 
 | ||||||
|  |     result.startTime = time(0); | ||||||
|  | 
 | ||||||
|     /* Fork a child to build the package. */ |     /* Fork a child to build the package. */ | ||||||
| #if __linux__ | #if __linux__ | ||||||
|     if (useChroot) { |     if (useChroot) { | ||||||
|  |  | ||||||
|  | @ -218,7 +218,9 @@ struct BuildResult | ||||||
|        non-determinism.) */ |        non-determinism.) */ | ||||||
|     bool isNonDeterministic = false; |     bool isNonDeterministic = false; | ||||||
| 
 | 
 | ||||||
|     //time_t startTime = 0, stopTime = 0;
 |     /* The start/stop times of the build (or one of the rounds, if it
 | ||||||
|  |        was repeated). */ | ||||||
|  |     time_t startTime = 0, stopTime = 0; | ||||||
| 
 | 
 | ||||||
|     bool success() { |     bool success() { | ||||||
|         return status == Built || status == Substituted || status == AlreadyValid; |         return status == Built || status == Substituted || status == AlreadyValid; | ||||||
|  |  | ||||||
|  | @ -961,7 +961,7 @@ static void opServe(Strings opFlags, Strings opArgs) | ||||||
|                 out << status.status << status.errorMsg; |                 out << status.status << status.errorMsg; | ||||||
| 
 | 
 | ||||||
|                 if (GET_PROTOCOL_MINOR(clientVersion) >= 3) |                 if (GET_PROTOCOL_MINOR(clientVersion) >= 3) | ||||||
|                     out << status.timesBuilt << status.isNonDeterministic; |                     out << status.timesBuilt << status.isNonDeterministic << status.startTime << status.stopTime; | ||||||
| 
 | 
 | ||||||
|                 break; |                 break; | ||||||
|             } |             } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue