## TL;DR
A traceback is a sqlmap bug or an environment problem, never a finding. Update to the latest build, clear the session with `--flush-session`, check disk space and memory, and save the full traceback before rerunning.

```text
Traceback (most recent call last)
```

## Use this when
- Sqlmap crashes mid-run printing a Python traceback.
- The same command crashes repeatably.
- The engagement is authorized and the target is reachable.

## Not for this skill when
- Sqlmap exits cleanly with a warning. Handle the warning, not a crash.
- The crash is in your wrapper script, not sqlmap. Fix your script.
- The box is out of disk or memory for unrelated reasons. Fix the box first.

## Steps
1. Update sqlmap: `git pull` in the sqlmap directory or reinstall. Verify: the version string is current; many tracebacks are already-fixed bugs.
2. Clear stale state: delete the session sqlite file and rerun with `--flush-session`. Verify: the crash does not recur from a clean session.
3. Check the environment: `df -h` for disk, `free -m` for memory, `python3 --version` for the interpreter. Verify: no resource exhaustion, Python 3.8+.
4. Save the FULL traceback plus the exact command line to a file. Verify: you can reproduce or report it precisely.
5. Search the sqlmap issue tracker with the last traceback lines before filing a duplicate. Verify: you know whether it is known, fixed, or new.

## Variant phrasings
### sqlmap traceback crash
Compact phrasing.
### sqlmap python error crash scan
Environment-flavored search.
### sqlmap crashes mid scan
Symptom-level phrasing.

Compatibility: sqlmap 1.x dev builds move fast; tracebacks on week-old checkouts are common. Python 3.8+ required.

## Why it happens
Sqlmap parses hostile, malformed server responses; an unexpected response shape can hit an unhandled code path. Stale session files from older versions and full disks corrupt the sqlite state and crash on load.

## Edge cases / pitfalls
- Do not "fix" a crash by editing sqlmap source mid-engagement unless you record the patch. Unrecorded patches poison reproducibility.
- A crash that only happens with `--threads>1` is a concurrency bug; drop to one thread and keep testing.
- Full disks cause the weirdest crashes. Check `df` before anything else; it takes five seconds.
- If you file an issue, include the FULL traceback and a redacted command. Partial tracebacks get closed.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_9h0b0XG4BWz3MxIIwYsmMg
