Guides
A useful place to start, with a route to the related result.
Guides 217–240 of 348
Troubleshooting guide
Link Search Console to GA4, and write a one-page measurement plan before you build anything
The permissions, steps, limits and delay for linking Search Console to a GA4 web stream, and a measurement plan template that ties every event to a business question and a test.
Troubleshooting guide
A database query is slow: read its plan on a copy before you add an index
How to compare estimated and actual rows, why EXPLAIN ANALYZE runs the statement, and what a before and after measurement must show before a fix counts.
Troubleshooting guide
The index exists but the query still scans the table: check column order, expressions and statistics
Why a database ignores an index: leading columns, expressions that do not match, tiny test tables and stale statistics, and how to test safely without forcing plans in production.
Troubleshooting guide
Before you drop an "unused" index: what usage counters can and cannot tell you
Index usage counters reset, miss monthly jobs, cover only one server and say nothing about constraints. How to judge the evidence period and drop safely.
Troubleshooting guide
An endpoint gets slower as the list grows: count its queries, then choose how to load relations
How to recognise a query-per-row pattern in Django, Rails or SQLAlchemy, the loading options each offers, and how a query-count test keeps it fixed.
Troubleshooting guide
A background job ran twice: record the operation in the database, do not rely on a lock
Why at-least-once queues repeat work, what an idempotency record with a unique constraint, a claim state and a lease does that a lock cannot, and the case where a worker dies mid-job.
Troubleshooting guide
Jobs reappear or vanish: visibility timeouts, retry counts and dead-letter queues explained
How a queue decides a message is still being worked, when it hands it out again, where failed messages go, and the alarms that stop them sitting unseen.
Troubleshooting guide
A cron job stopped or does nothing: check its environment, mail, percent signs and overlap
Why a command that works by hand fails from cron, how the scheduler treats environment, output, percent signs and day fields, and how to stop runs overlapping.
Troubleshooting guide
Alert when a scheduled job does not run: heartbeat checks, grace time and their blind spots
How a heartbeat monitor inverts alerting, how to choose a schedule and grace time, what start and fail signals add, and what the check cannot see.
Troubleshooting guide
Cache still shows the old value after an update: order of steps, expiry and key names
The four ways a Redis cache keeps stale data: invalidating before the commit, a missed write path, an overwrite that drops the expiry, and mismatched keys; plus why not to delete by pattern.
Troubleshooting guide
Duplicate rows in a table: choose a survivor, repoint references, keep a way back, then add the constraint
How duplicates arise, why deleting extras can orphan or cascade away data, a safe merge order with an archive and a reverse script, and the unique index that stops them returning.
Troubleshooting guide
Duplicate key error after an import or restore: the sequence is behind the data
Why new inserts collide with existing ids after rows are loaded with explicit ids, how to read the sequence against the maximum id, and how to set it safely.
Troubleshooting guide
Two branches both added a migration: reconcile Django, Alembic or Rails history before you deploy
What each migration tool does when two branches add migrations, how to merge the history safely, and why you never edit a migration that has already run in production.
Troubleshooting guide
Adding a column to a big table: which steps rewrite it and which locks they take
What PostgreSQL and MySQL do for ADD COLUMN, defaults, NOT NULL, foreign keys and indexes on a large table, and how to order the steps so writes keep flowing.
Troubleshooting guide
Backfill a new column in batches: resume safely and write the rollback first
How to fill a column across millions of rows without one giant transaction, how to prove every row is correct, and how to make the way back reversible and rehearsed.
Troubleshooting guide
Deadlocks and lock timeouts: read the database's record, fix the lock order, then set timeouts
How PostgreSQL and MySQL InnoDB report a deadlock, how to draw the cycle, why retries are the last step, and which timeout settings stop one stuck transaction taking the app down.
Troubleshooting guide
Timed out waiting for a database connection: pool size, leaks and server limits are different problems
How to tell an undersized pool from leaked connections, from many processes multiplying the pool, from a pooler mode that breaks features, using SQLAlchemy, Django, PostgreSQL and PgBouncer documentation.
Troubleshooting guide
Bookings that duplicate or land an hour out in Google Calendar: event identity and time zones
Give each booking a stable Google Calendar event ID so retries never duplicate it, and store the time zone so events show the right local hour across clock changes.
Troubleshooting guide
Why a Google Calendar connection stops working after a week, or months later
The documented reasons a Google refresh token stops working, and how to design a visible reconnect state so bookings are never lost while it is broken.
Troubleshooting guide
Address autocomplete on a checkout: which Google component, which key settings, which fields
Use the current Places autocomplete component, restrict the key to your site and to the Maps JavaScript API and Places API (New), and request only the address fields the form uses.
Troubleshooting guide
Adding Sign in with Google to existing accounts: key on the subject ID and choose a linking rule
Why the provider's subject identifier, not email, identifies a Google user, and three linking rules with the risk each carries.
Troubleshooting guide
Google sign-in callback checks: state, nonce, PKCE, one-time code and ID token validation
The checks a sign-in callback must make before it starts a session, including PKCE, and a test for each failure using synthetic tokens and a stand-in token endpoint.
Troubleshooting guide
SendGrid says the domain is verified, but is your mail actually aligned with your From address?
Read a received message's headers to tell whether SendGrid's SPF and DKIM results match your From domain, and what to check when they do not.
Troubleshooting guide
Bounced, blocked or dropped: what SendGrid's event feed tells your app to do
Separate permanent bounces, temporary blocks and drops caused by suppression, and store each once so your app stops mailing addresses that cannot receive.
A need we have not covered yet?
Tell us what you need accomplished. We confirm whether we can offer a useful scope before accepting work.
Describe a custom outcome