linguabot commited on
Commit
8a65b6e
·
verified ·
1 Parent(s): 087b343

Upload folder using huggingface_hub

Browse files
client/src/pages/TutorialTasks.tsx CHANGED
@@ -385,7 +385,13 @@ const TutorialTasks: React.FC = () => {
385
  // Wait for actual content to load before ending animation
386
  try {
387
  // Fetch new week's data with the updated selectedWeek
388
- const response = await api.get(`/api/search/tutorial-tasks/${week}`);
 
 
 
 
 
 
389
 
390
  if (response.data) {
391
  const tasks = response.data;
@@ -523,7 +529,12 @@ const TutorialTasks: React.FC = () => {
523
  return;
524
  }
525
 
526
- const response = await api.get(`/api/search/tutorial-tasks/${selectedWeek}`);
 
 
 
 
 
527
 
528
  if (response.data) {
529
  const tasks = response.data;
 
385
  // Wait for actual content to load before ending animation
386
  try {
387
  // Fetch new week's data with the updated selectedWeek
388
+ let response;
389
+ try {
390
+ response = await api.get(`/api/search/tutorial-tasks/${week}`);
391
+ } catch (e) {
392
+ // Soft retry once on transient errors
393
+ response = await api.get(`/api/search/tutorial-tasks/${week}`);
394
+ }
395
 
396
  if (response.data) {
397
  const tasks = response.data;
 
529
  return;
530
  }
531
 
532
+ let response;
533
+ try {
534
+ response = await api.get(`/api/search/tutorial-tasks/${selectedWeek}`);
535
+ } catch (e) {
536
+ response = await api.get(`/api/search/tutorial-tasks/${selectedWeek}`);
537
+ }
538
 
539
  if (response.data) {
540
  const tasks = response.data;
client/src/services/api.ts CHANGED
@@ -87,6 +87,15 @@ api.interceptors.response.use(
87
  resolve(api.request(error.config));
88
  }, 2000); // Wait 2 seconds before retry
89
  });
 
 
 
 
 
 
 
 
 
90
  } else if (error.response?.status === 500) {
91
  console.error('Server error:', error.response.data);
92
  } else if (error.code === 'ECONNABORTED') {
 
87
  resolve(api.request(error.config));
88
  }, 2000); // Wait 2 seconds before retry
89
  });
90
+ } else if (error.response?.status === 503) {
91
+ // Service unavailable - quick exponential backoff retry (max 2 tries)
92
+ const cfg: any = error.config || {};
93
+ cfg.__retryCount = cfg.__retryCount || 0;
94
+ if (cfg.__retryCount < 2) {
95
+ cfg.__retryCount += 1;
96
+ const delay = 500 * Math.pow(2, cfg.__retryCount); // 1000ms, 2000ms
97
+ return new Promise(resolve => setTimeout(() => resolve(api.request(cfg)), delay));
98
+ }
99
  } else if (error.response?.status === 500) {
100
  console.error('Server error:', error.response.data);
101
  } else if (error.code === 'ECONNABORTED') {