Docs
Queue Stalled

Queue Stalled

Troubleshoot a stalled sync queue.

If your sync queue has stopped processing or items are stuck, follow this guide to get things moving again.

Symptoms

  • Items stuck in queue for extended periods
  • Queue count not decreasing
  • Sync progress bar not moving
  • Backlog continuously growing

Common Causes

1. WP-Cron Not Firing

WordPress's built-in cron is visitor-dependent and often fails on low-traffic sites.

Solution: Set up a server-side cron job for reliable, scheduled execution.

Server-Side Cron Setup Guide

2. Server Timeouts

Long-running sync operations may be killed by server timeout limits.

Symptoms:

  • Partial syncs completing
  • Items failing repeatedly
  • Timeout errors in logs

Solutions:

  • Increase max_execution_time in PHP settings
  • Enable performance settings to reduce load
  • Contact your host about increasing limits

3. Memory Limits

PHP memory exhaustion can stop queue processing.

Symptoms:

  • "Allowed memory size exhausted" errors
  • Queue stops mid-process
  • Large products failing

Solutions:

  • Increase memory_limit in PHP settings (256M recommended)
  • Enable request delays to reduce concurrent memory usage
  • Process smaller batches

4. Rate Limiting Active

If rate-limiting is enabled and triggered, the queue pauses intentionally.

How to check:

  1. Go to SWS Pro > Settings > Performance
  2. Check if rate-limiting is enabled
  3. Look for rate-limit status indicator

Solutions:

  • Wait for backlog to clear (automatic)
  • Increase rate limit threshold
  • Widen the time window

5. Stuck Queue Items

Individual items may be stuck due to errors.

Solutions:

  • Check sync logs for specific errors
  • Clear stuck items from queue
  • Retry failed items manually

Step-by-Step Recovery

Step 1: Check Queue Status

  1. Go to SWS Pro > Queue
  2. Note the total items pending
  3. Check for any items marked as failed

Step 2: Review Recent Logs

  1. Go to SWS Pro > Logs
  2. Look for error messages
  3. Identify patterns (same product failing, timeout errors, etc.)

Step 3: Verify Cron Is Running

Test if WP-Cron is firing:

  1. Install WP Crontrol plugin (optional)
  2. Check scheduled tasks are executing
  3. Or set up server-side cron

Server-Side Cron Setup

Step 4: Enable Performance Settings

If you have a large backlog:

  1. Go to SWS Pro > Settings > Performance
  2. Enable Rate-Limiting
  3. Enable Request Delays
  4. Save and monitor queue progress

Performance Settings Guide

Step 5: Clear Stuck Items (If Needed)

If specific items are blocking the queue:

  1. Identify the stuck item in logs
  2. Check the source product in Square
  3. Fix any data issues
  4. Clear and retry the item

Prevention

To prevent future queue stalls:

  1. Set up server-side cron — Most reliable solution
  2. Enable performance settings — For high-volume catalogs
  3. Monitor queue regularly — Catch issues early
  4. Review server limits — Ensure adequate PHP resources

Server Requirements

SettingMinimumRecommended
PHP memory_limit128M256M
PHP max_execution_time60s120s
Cron frequency5 min1 min

Still Stuck?

If the queue remains stalled: