Repository navigation
[CRDC_EducationSchool_HarassmentOrBullying] Partitioned import inputs by years - #2299
Open
Krishnam24maheshwari wants to merge 1 commit into
Open
Krishnam24maheshwari wants to merge 1 commit into
Krishnam24maheshwari wants to merge 1 commit into
Conversation
Contributor
There was a problem hiding this comment.
Code Review
This pull request updates the CRDC harassment or bullying import configuration to include historical data partitions (2012–2021) and a new 2024Onwards partition, while optimizing the parallel processing script (run.sh) to sort inputs by size and dynamically scale concurrency. It also introduces a validation configuration file (validation_config.json). Feedback focuses on critical issues in the shell script's background job management, where reaped jobs will cause incorrect failure counts and exit statuses are discarded, as well as a potential crash in the SQL validator if date fields are not safely parsed before casting to integers.
Krishnam24maheshwari
force-pushed
the
crdc_edu
branch
from
October 23, 2026 09:20
8c400ca to
289dd50
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Updates the CRDC Education School Harassment or Bullying (
CRDC_EducationSchool_HarassmentOrBullying) import pipeline to partitionimport_inputsby survey year (2012,2014,2018,2021,2022, and2024Onwards), add automated data validation rules, and improve parallel processing inrun.sh.Key Changes
1.
manifest.jsonimport_inputsby survey year (2012,2014,2018,2021,2022, and2024Onwards) with explicittemplate_mcf,cleaned_csv, andnode_mcfwildcards (processed_output/crdc_harassment_or_bullying_*.mcf).2024Onwardspartition to support 2024 and future biennial survey releases without requiring manifest updates on each release.processed_output/*_counters.txtandvalidation_config.jsontosource_filesand linkedvalidation_config_file.resource_limits(cpu: 16,memory: 128,disk: 200).2.
run.shcrdc_harassment_or_bullying_2024Onwardsoutput partition.2012,2014,2018,2021,2022) by file size descending so the largest jobs start first.--output_counterstostat_var_processor.pyfor each job to emit pipeline telemetry counters.PIDS) and waited on each job to capture non-zero exit codes (FAILED_JOBS).3.
validation_config.jsonAdded validation rules tailored to the biennial CRDC release cadence:
check_deleted_records_percent(DELETED_RECORDS_PERCENT,threshold: 0.1): Allows up to 0.1% deleted records across refreshes to account for natural school closures, mergers, or boundary changes between biennial survey releases.check_max_date_consistent(MAX_DATE_CONSISTENT): Ensures all StatVars within each survey-year partition share a consistent latest observation date.check_latest_date_freshness(SQL_VALIDATOR): Verifies that the2024Onwardspartition contains observations for year2024or later (CAST(MaxDate AS INT) >= 2024), scoped viaWHERE CAST(MinDate AS INT) >= 2024so historical year partitions (input0–input4) are not falsely flagged.Validation & Test Artifacts
validation_output.csv):