|  | @@ -102,6 +102,15 @@ def upload_results_to_bq(resultset, bq_table, args, platform):
 | 
	
		
			
				|  |  |        test_results['timestamp'] = time.strftime('%Y-%m-%d %H:%M:%S')
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |        row = big_query_utils.make_row(str(uuid.uuid4()), test_results)
 | 
	
		
			
				|  |  | -      if not big_query_utils.insert_rows(bq, _PROJECT_ID, _DATASET_ID, bq_table, [row]):
 | 
	
		
			
				|  |  | -        print('Error uploading result to bigquery.')
 | 
	
		
			
				|  |  | -        sys.exit(1)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      # TODO(jtattermusch): rows are inserted one by one, very inefficient
 | 
	
		
			
				|  |  | +      max_retries = 3
 | 
	
		
			
				|  |  | +      for attempt in range(max_retries):
 | 
	
		
			
				|  |  | +        if big_query_utils.insert_rows(bq, _PROJECT_ID, _DATASET_ID, bq_table, [row]):
 | 
	
		
			
				|  |  | +          break
 | 
	
		
			
				|  |  | +        else:
 | 
	
		
			
				|  |  | +          if attempt < max_retries - 1:
 | 
	
		
			
				|  |  | +            print('Error uploading result to bigquery, will retry.')
 | 
	
		
			
				|  |  | +          else:
 | 
	
		
			
				|  |  | +            print('Error uploading result to bigquery, all attempts failed.')
 | 
	
		
			
				|  |  | +            sys.exit(1)
 |