-
Notifications
You must be signed in to change notification settings - Fork 2
Troubleshooting
command not found: uv
Fix:
curl -LsSf https://astral.sh/uv/install.sh | sh
# Then add to PATH
export PATH="$HOME/.cargo/bin:$PATH"
# Or add to your shell profile:
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrcModuleNotFoundError: No module named 'synthea'
Fix: Install the package in editable mode:
uv pip install -e .Cause: Default single-threaded mode.
Fix:
uv run synthea -p 1000 --threads 8Or add to config:
generate.thread_pool_size = 8Fix: Generate in batches:
# 10 000 patients in batches of 1 000
for seed in $(seq 0 1000 9000); do
uv run synthea -p 1000 -s $seed --threads 4 -o ./output
doneOr set exporter.append_mode = true and exporter.csv.export = true to stream rows incrementally.
Cause: Demographic filter too narrow — age range or gender filter has no matching patients in the selected location.
Fix:
- Widen the age range:
-a 0-99 - Remove the gender filter
- Try a different state / city
Symptom: Server rejects bundles with 422 Unprocessable Entity.
Common causes and fixes:
| Error | Fix |
|---|---|
Missing required field: status on Condition |
Upgrade to latest Synthea; default status was added |
Unknown resource type |
Ensure server supports FHIR R4 (not DSTU2 / STU3) |
Narrative required |
Set exporter.fhir.transaction_bundle = false and use collection type |
| Duplicate patient IDs | Run with exporter.use_uuid_filenames = true
|
Cause: Using more than 1 thread. Thread scheduling is non-deterministic.
Fix:
uv run synthea -p 100 -s 12345 --threads 1KeyError: 'states'
Fix: Every module JSON must have a top-level states object and exactly one "type": "Initial" state and at least one "type": "Terminal" state.
Run the validator:
uv run python -m synthea.validate_module resources/modules/my_module.jsonCause: CSV export is disabled by default.
Fix:
exporter.csv.export = trueOr add -c with a properties file that enables it.
- GitHub Issues — bug reports and feature requests
- GitHub Discussions — questions and community help
- Run with
--log-level debugfor verbose output that usually pinpoints the problem