diff --git a/calendar/gui/e-cal-model.c b/calendar/gui/e-cal-model.c
index f9030cb..d6100c7 100644
--- a/calendar/gui/e-cal-model.c
+++ b/calendar/gui/e-cal-model.c
@@ -1683,10 +1683,10 @@ update_e_cal_view_for_client (ECalModel *model, ECalModelClient *client_data)
 
 try_again:		
 	if (!e_cal_get_query (client_data->client, priv->full_sexp, &client_data->query, &error)) {
-		if (error->code == E_CALENDAR_STATUS_BUSY && tries != 3) {
+		if (error->code == E_CALENDAR_STATUS_BUSY && tries != 10) {
 			tries++;
 			/*TODO chose an optimal value */
-			g_usleep (50);
+			g_usleep (500);
 			g_clear_error (&error);
 			goto try_again;	
 		}	
diff --git a/calendar/gui/gnome-cal.c b/calendar/gui/gnome-cal.c
index 782d1b7..ddb4e0f 100644
--- a/calendar/gui/gnome-cal.c
+++ b/calendar/gui/gnome-cal.c
@@ -903,10 +903,10 @@ try_again:
 		old_query = NULL;
 		if (!e_cal_get_query ((ECal *) l->data, real_sexp, &old_query, &error)) {
 			/* If calendar is busy try again for 3 times. */
-			if (error->code == E_CALENDAR_STATUS_BUSY && tries != 3) {
+			if (error->code == E_CALENDAR_STATUS_BUSY && tries != 10) {
 				tries++;
 				/*TODO chose an optimal value */
-				g_usleep (50);
+				g_usleep (500);
 				
 				g_clear_error (&error);
 				goto try_again;	
