failed to merge voxels - error: 500 Internal Server Error
Fix Plan: failed to merge voxels - error: 500 Internal Server Error
Changes#
data-pipeline-functions: services/voxel/lambda/merge_voxel.py#
- What: Athena SQL 쿼리의
CAST(FLOOR(pv.x / {voxel_size}) AS INTEGER)를CAST(FLOOR(pv.x / {voxel_size}) AS BIGINT)로 변경.y컬럼도 동일하게AS INTEGER→AS BIGINT로 변경. - Why: nswgov 테넌트의 voxel 좌표값이 ~14.2×10⁹에 달하여
FLOOR(x / 2)≈ 7.1×10⁹이 되고, 32-bit INTEGER 최댓값(2,147,483,647)을 초과함. BIGINT(64-bit)로 변경하면 9.2×10¹⁸까지 수용 가능. - Lines: 73 (SELECT 절의 x, y 캐스팅 부분)
Acceptance Criteria#
-
merge_voxel.py에서AS INTEGER가 0건 (grep 결과) -
merge_voxel.py에서AS BIGINT가 2건 (x, y) - 다른 코드 변경 없음 (최소 변경 원칙)
Tests#
- 기존 테스트: data-pipeline-functions에는 lint/test가 구성되어 있지 않음
- 신규 테스트: 없음 (Python syntax 검증만 수행)