|  |  |  | @ -4448,7 +4448,11 @@ bool sharesummaries_to_markersummaries(PGconn *conn, WORKMARKERS *workmarkers, | 
			
		
	
		
			
				
					|  |  |  |  | 	char *reason = NULL; | 
			
		
	
		
			
				
					|  |  |  |  | 	int ss_count, ms_count; | 
			
		
	
		
			
				
					|  |  |  |  | 	char *st = NULL; | 
			
		
	
		
			
				
					|  |  |  |  | 	tv_t db_stt, db_fin, lck_stt, lck_fin; | 
			
		
	
		
			
				
					|  |  |  |  | 	tv_t add_stt, db_stt, db_fin, lck_stt, lck_got, lck_fin; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 	DATE_ZERO(&add_stt); | 
			
		
	
		
			
				
					|  |  |  |  | 	DATE_ZERO(&db_stt); | 
			
		
	
		
			
				
					|  |  |  |  | 	DATE_ZERO(&db_fin); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 	LOGWARNING("%s() Processing: workmarkers %"PRId64"/%s/" | 
			
		
	
		
			
				
					|  |  |  |  | 		   "End %"PRId64"/Stt %"PRId64"/%s/%s", | 
			
		
	
	
		
			
				
					|  |  |  | @ -4474,6 +4478,7 @@ bool sharesummaries_to_markersummaries(PGconn *conn, WORKMARKERS *workmarkers, | 
			
		
	
		
			
				
					|  |  |  |  | 		goto flail; | 
			
		
	
		
			
				
					|  |  |  |  | 	} | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 	setnow(&add_stt); | 
			
		
	
		
			
				
					|  |  |  |  | 	// Check there aren't already any matching markersummaries
 | 
			
		
	
		
			
				
					|  |  |  |  | 	lookmarkersummary.markerid = workmarkers->markerid; | 
			
		
	
		
			
				
					|  |  |  |  | 	lookmarkersummary.userid = 0; | 
			
		
	
	
		
			
				
					|  |  |  | @ -4495,6 +4500,7 @@ bool sharesummaries_to_markersummaries(PGconn *conn, WORKMARKERS *workmarkers, | 
			
		
	
		
			
				
					|  |  |  |  | 		 *  so this will continue and regenerate the markersummaries | 
			
		
	
		
			
				
					|  |  |  |  | 		 */ | 
			
		
	
		
			
				
					|  |  |  |  | 		reason = "markersummaries already exist"; | 
			
		
	
		
			
				
					|  |  |  |  | 		setnow(&add_stt); | 
			
		
	
		
			
				
					|  |  |  |  | 		goto flail; | 
			
		
	
		
			
				
					|  |  |  |  | 	} | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | @ -4677,6 +4683,7 @@ flail: | 
			
		
	
		
			
				
					|  |  |  |  | 		K_WLOCK(sharesummary_free); | 
			
		
	
		
			
				
					|  |  |  |  | 		K_WLOCK(markersummary_free); | 
			
		
	
		
			
				
					|  |  |  |  | 		K_RLOCK(workmarkers_free); | 
			
		
	
		
			
				
					|  |  |  |  | 		setnow(&lck_got); | 
			
		
	
		
			
				
					|  |  |  |  | 		ms_item = STORE_HEAD_NOLOCK(new_markersummary_store); | 
			
		
	
		
			
				
					|  |  |  |  | 		while (ms_item) { | 
			
		
	
		
			
				
					|  |  |  |  | 			// move the new markersummaries into the trees/stores
 | 
			
		
	
	
		
			
				
					|  |  |  | @ -4730,15 +4737,17 @@ flail: | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 		LOGWARNING("%s() Processed: %d ms %d ss %"PRId64" shares " | 
			
		
	
		
			
				
					|  |  |  |  | 			   "%"PRId64" diff for workmarkers %"PRId64"/%s/" | 
			
		
	
		
			
				
					|  |  |  |  | 			   "End %"PRId64"/Stt %"PRId64"/%s/%s db %.3fs " | 
			
		
	
		
			
				
					|  |  |  |  | 			   "lck %.3fs", | 
			
		
	
		
			
				
					|  |  |  |  | 			   "End %"PRId64"/Stt %"PRId64"/%s/%s add %.3f " | 
			
		
	
		
			
				
					|  |  |  |  | 			   "db %.3fs lck %.3fs+%.3f", | 
			
		
	
		
			
				
					|  |  |  |  | 			   shortname, ms_count, ss_count, shareacc, diffacc, | 
			
		
	
		
			
				
					|  |  |  |  | 			   workmarkers->markerid, workmarkers->poolinstance, | 
			
		
	
		
			
				
					|  |  |  |  | 			   workmarkers->workinfoidend, | 
			
		
	
		
			
				
					|  |  |  |  | 			   workmarkers->workinfoidstart, | 
			
		
	
		
			
				
					|  |  |  |  | 			   workmarkers->description, | 
			
		
	
		
			
				
					|  |  |  |  | 			   workmarkers->status, tvdiff(&db_fin, &db_stt), | 
			
		
	
		
			
				
					|  |  |  |  | 			   tvdiff(&lck_fin, &lck_stt)); | 
			
		
	
		
			
				
					|  |  |  |  | 			   workmarkers->status, tvdiff(&db_stt, &add_stt), | 
			
		
	
		
			
				
					|  |  |  |  | 			   tvdiff(&db_fin, &db_stt), | 
			
		
	
		
			
				
					|  |  |  |  | 			   tvdiff(&lck_got, &lck_stt), | 
			
		
	
		
			
				
					|  |  |  |  | 			   tvdiff(&lck_fin, &lck_got)); | 
			
		
	
		
			
				
					|  |  |  |  | 	} | 
			
		
	
		
			
				
					|  |  |  |  | 	free_ktree(ms_root, NULL); | 
			
		
	
		
			
				
					|  |  |  |  | 	new_markersummary_store = k_free_store(new_markersummary_store); | 
			
		
	
	
		
			
				
					|  |  |  | 
 |