Tickera sessions not deleted automatically after finished order
Tickera sessions are piling up in the database after orders complete instead of being auto-deleted — and you’ve noticed it as significant page-load lag, occasional Server Error 500s, or just an ever-growing wp_options table.
The default behaviour
Normally, Tickera clears session data after each order completes. The cleanup runs via WordPress’s wp-cron — a scheduled task that fires when traffic hits your site. On a busy site, cron fires constantly; on a quiet site or a host that has disabled WP-Cron, it might not fire often enough (or at all).
The fix: ensure real cron is running
The most reliable fix is to set up a real OS-level cron job hitting your site’s wp-cron.php, rather than relying on traffic-triggered WordPress cron. On most managed WordPress hosts (SiteGround, Kinsta, WP Engine), this is already configured. On budget shared hosting, it usually isn’t.
How to check if WP-Cron is firing
- Install the free WP Crontrol plugin temporarily.
- Go to Tools → Cron Events.
- Look at when scheduled events last ran. If “Next due” is in the past for several events, your cron isn’t firing.
How to set up a system cron job
On hosts that allow SSH or cPanel cron access, add a system cron that hits wp-cron.php every 5–15 minutes:
*/5 * * * * curl -s https://yoursite.com/wp-cron.php?doing_wp_cron > /dev/null 2>&1Then disable WordPress’s built-in cron-on-traffic mode by adding this to wp-config.php:
define( 'DISABLE_WP_CRON', true );Now WordPress cron runs predictably every 5 minutes — no traffic dependency, no missed runs.
If your host won’t let you set up real cron
External cron-as-a-service options exist if your host doesn’t allow OS cron jobs: cron-job.org (free), EasyCron, similar services. They hit your wp-cron.php URL on a schedule for you.
Server-level session file cleanup
PHP also writes its own session files to disk separately from WordPress. If your server doesn’t clean those automatically (the session.gc_* PHP settings control this), they can accumulate independently. Contact your hosting provider and ask them to ensure session garbage collection is enabled — most managed hosts handle this, but budget shared hosting sometimes doesn’t.
Why this matters
Each abandoned session takes up a row in wp_options (or wherever your session storage lives). Over a busy event with thousands of checkout starts, the table grows fast. Queries against a huge wp_options table get slow — page loads lag, the dashboard slows down, eventually you hit memory limits and see 500 errors.
Related
Was this article helpful?
Yes — great. No or partially? Tell us what was missing — we read every message and use it to improve these docs.