Error map
Maximum update depth Error: Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate.
React · layer 1, On your device
Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (12)
Flutter: setState() called after dispose(): _MyState#1a2b3 (lifecycle state: defunct, not mounted)
An async callback (network, timer, stream) finished after the widget was removed and then called setState.
Terraform: Error: Error acquiring the state lock — ConditionalCheckFailedException / state blob is already locked
Another Terraform run holds the state lock, or a previous run crashed and left the lock behind.
Error: Invalid hook call. Hooks can only be called inside of the body of a function component.
A hook ran outside a function component/custom hook, conditionally — or two copies of React are loaded.
Warning: Cannot update a component (`Parent`) while rendering a different component (`Child`)
A child component updated a parent’s state during its render instead of in an effect or event handler.
Optimistic lock conflict: OptimisticLockException / StaleObjectStateException / version mismatch
Someone else changed the record after you read it, so your update — based on an old version — was rejected to avoid overwriting t…
API Error: Invalid state transition — operation not allowed in the resource’s current state
The request is valid, but the object is in a state where this action isn’t allowed — cancelling something already completed, refu…
Error: Too many re-renders. React limits the number of renders to prevent an infinite loop.
A state update runs during render, which triggers another render, which updates state again — forever.
Warning: A component is changing an uncontrolled input to be controlled
An input’s `value` started as `undefined` (uncontrolled) and later became a defined value (controlled), or vice versa.
Error: Actions must be plain objects. Instead, the actual type was: 'function'.
A function (thunk) was dispatched but the thunk middleware isn’t configured.
A non-serializable value was detected in the state / in an action, in the path
Redux Toolkit’s middleware found a Date, Promise, class instance or function in state or an action.
Warning: useEffect must not return anything besides a function, which is used for clean-up. It looks like you wrote useEffect(async () => ...)
An async function was passed directly to useEffect, so it returns a Promise instead of a cleanup function.
Warning: useLayoutEffect does nothing on the server
A component using useLayoutEffect was server-rendered, where layout effects can’t run.
Two steps away (30)
HTTP 409 Conflict
The request conflicts with the current state of the resource — e.g. a duplicate or an edit based on an outdated version.
java.lang.IllegalStateException
A method was called when the object wasn’t in the right state for it.
TypeError: Cannot assign to read only property 'x' of object
Code tried to modify a frozen object, a getter-only property, or immutable state.
Deadlock found when trying to get lock; try restarting transaction
Two transactions waited on each other’s locks; the database killed one so the other could continue.
Lock wait timeout exceeded; try restarting transaction (MySQL 1205)
A query waited too long for a row lock held by another transaction and gave up.
MySQL ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction
MySQL detected a deadlock between two transactions and rolled one back.
npm ERR! code ERESOLVE — unable to resolve dependency tree
npm 7+ found conflicting peer dependency requirements and refuses to install a broken tree.
Error: Hydration failed because the initial UI does not match what was rendered on the server
The HTML rendered on the server differs from the first client render, so React (Next.js/Remix) can’t attach to it.
React Hook useEffect has a missing dependency (react-hooks/exhaustive-deps)
ESLint warns that the effect reads a value that isn’t in its dependency array, so it may use a stale value.
Warning: Each child in a list should have a unique "key" prop
When rendering a list with `.map()`, each element needs a stable, unique `key` so React can track items between renders.
Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined
JSX referenced a component that is undefined — almost always a default/named import mismatch.
Error: Nothing was returned from render. This usually means a return statement is missing.
A component returned undefined (React 17 and earlier) — usually a missing return or a return followed by a line break.
java.util.ConcurrentModificationException
A collection was modified while being iterated (even in a single thread).
HTTP 412 Precondition Failed
A conditional request header (If-Match, If-Unmodified-Since) didn’t match the current state of the resource.
HTTP 428 Precondition Required
The server requires a conditional request (If-Match / If-Unmodified-Since) to prevent lost updates, and you didn’t send one.
HTTP 422 Unprocessable Content
The request is well-formed, but the data fails validation (e.g. invalid email, missing required field).
API Error: Resource already exists (ALREADY_EXISTS / resource_already_exists / 409)
The create request was refused because an object with the same unique identity — name, email, external ID — already exists.
HTTP 423 Locked
The resource is locked, so the change was refused — common with WebDAV files and some APIs that lock records during processing.
RangeError: Maximum call stack size exceeded
A function called itself (directly or indirectly) too many times — usually infinite recursion.
Error: Objects are not valid as a React child
You tried to render a plain object (or a Promise/Date) directly in JSX; React can only render strings, numbers, elements and arra…
Warning: Functions are not valid as a React child. This may happen if you return a Component instead of <Component /> from render.
A function (usually a component itself) was rendered instead of calling/rendering it as an element.
TypeError: Cannot read properties of undefined (reading 'x')
You tried to access a property on a value that is `undefined` (or `null`) — usually data that hasn’t loaded yet or a wrong proper…
Warning: validateDOMNesting(...): <div> cannot appear as a descendant of <p>.
The JSX produces invalid HTML nesting, which also causes hydration mismatches in SSR.
Error: No QueryClient set, use QueryClientProvider to set one
TanStack Query hooks ran outside a QueryClientProvider (or a duplicate copy of the library is installed).
android.os.TransactionTooLargeException: data parcel size x bytes
Too much data was put into a Bundle/Intent/saved state, exceeding the ~1 MB Binder transaction buffer.
SwiftUI: Modifying state during view update, this will cause undefined behavior
A @State/@Published value was changed while SwiftUI was computing a view’s body.
AbortError: The user aborted a request. / signal is aborted without reason
A fetch was cancelled through an AbortController (or the browser cancelled it).
TypeError: Failed to execute 'json' on 'Response': body stream already read
A fetch Response body was consumed twice (e.g. calling .text() then .json()).
RuntimeError: Event loop is closed
Async code tried to use an event loop that has already been shut down.
Warning: Prop `className` did not match. Server: "x" Client: "y"
A prop rendered on the server differs from the client — usually CSS-in-JS class names or random IDs.
Map another error
Popular: 4035004000xC000007BTypeErrorCritical error404NullPointerException