Bake per-state ACS-local year files into Stage 12 and record the dataset state runs load
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- backend, data-engineering
Línea de trabajo
Read #878 and inspect Stage 12's precompute, cache manifest, image fetch, worker check, runtime lookup, and stage12_adapter.py, along with the shared simulation_runtime helpers. Trace which dataset each region type loads and how its provenance and revision reach run records; done means Stage 12 has per-state files, validates loaded dataset identity, preserves compatibility during rollout, and reports the loaded revision as data_version.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
#878 makes the main simulation path pre-build one ACS-local year file per state, so state and district requests stop preparing the 9.8 GB regional dataset on each new worker. Stage 12 has the same problem and needs its own copy of that change.
- Slow loading. Stage 12's US workers resolve state and district requests to
populace_us_2024_acs_localthrough the sharedsimulation_runtimehelpers. Each new worker downloads the full source and prepares the full-country year file. On 21 Oct, Utah'sdataset_loadtook 55 s on a reused worker and 250 s on a new one, and the workers reached about 51 GB of memory.
Stage 12 also records the wrong dataset for these runs:
- Wrong dataset recorded. The entry adapter (
stage12_adapter.py) records the national datasetpopulace_us_2024as the dataset identity, URI and population for every US request. State and district runs actually loadpopulace_us_2024_acs_local, so their comparison records name the wrong dataset. - Worker checks.
_require_installed_bundlerequires the default dataset, and nothing checks that the dataset recorded is the one loaded. - Wrong
data_versionon the main path. For state runs, the main path names the national release (populace-us-2024-spm-20260915) asdata_version, because nothing passes the loaded dataset's revision.
Change
- Stage 12 state files. Stage 12's precompute, cache manifest, image fetch, worker check and runtime lookup get their own copy of #878's per-state datasets. The two stacks stay separate.
- Published bundle. It records which dataset each region type loads. The v2 version manifest goes under a new key that only updated entry services read. The existing keys keep their shapes for entry services already running.
- Workers. They accept regional provenance and check that it names the dataset actually loaded. During the rollout, the default dataset stays accepted for state and district runs from entry services that haven't been updated.
- Entry adapter. It sends the regional dataset's provenance for state and district requests.
- Main path. State and district runs report the loaded dataset's revision as
data_version, so both paths report the same value.
Related: #878, #717.
- Lenguaje dominante
- Python
- Estrellas
- 1
- Forks
- 1
- Merge medio
- 1 d 16 h
- PR fusionados (30 d)
- 60
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de PolicyEngine/policyengine-sim-api
-
Update policyengine to 6.7.3Quizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 2/5 Medio día Aptitud para principiantes 70/100
PolicyEngine/policyengine-sim-api#823 ·
Los mantenedores suelen responder en 1 día
-
Integration tests fail due to missing UV virtual environment setupPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
PolicyEngine/policyengine-sim-api#314 ·
Los mantenedores suelen responder en 1 día
-
Staging deployments do not promote their tested Simulation Entrypoint revisionPosiblemente ocupada @anth-volk la tomó hoy. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
PolicyEngine/policyengine-sim-api#893 ·
Los mantenedores suelen responder en 1 día
-
Daily dependency update fails: merging main into the update branch produces a uv.lock that uv cannot parsePosiblemente ocupada @anth-volk la tomó hoy. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
PolicyEngine/policyengine-sim-api#889 ·
Los mantenedores suelen responder en 1 día
-
Update policyengine to 6.10.0Posiblemente ocupada @policyengine la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 35/100
PolicyEngine/policyengine-sim-api#882 ·
Los mantenedores suelen responder en 1 día
Todos los issues de PolicyEngine/policyengine-sim-api
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
developmentseed/titiler-cmr#250 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[Bug]: IndexHandler.post crashes with HTTP 500 on malformed payloads, missing credentials, or when login is disabledPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 6 días
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
cookiecutter/cookiecutter-django#6999 ·
Los mantenedores suelen responder en 1 día
-
fix: @_helpers.positional raises TypeError when decorating functions without default argumentsPosiblemente ocupada @codeXsidd la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
googleapis/google-api-python-client#2845 ·
Los mantenedores suelen responder en 1 día
-
Bump zizmor to 1.31.1+Abiertogithub_actions
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
collective/icalendar#2003 · 1 comentario ·
Los mantenedores suelen responder en 1 día