Skip to content

fix: Functions DB 상대 경로와 기본 빌더 소켓 연결 수정 - #89

Merged
haramj merged 2 commits into
mainfrom
fix/functions-database-builder
Oct 1, 2026
Merged

haramj merged 2 commits into
mainfrom
fix/functions-database-builder

Conversation

@haramj

@haramj haramj commented Sep 29, 2026

Copy link
Copy Markdown
Member

Summary

기본 데이터 경로 function-data에서 SQLite DB를 생성하면 상대 경로로 구성한 file URI 때문에 SQL logic error: out of memory (1)가 발생했습니다. 시작 시 데이터 디렉터리를 절대 경로로 정규화해 메타데이터와 개별 SQLite 파일이 같은 경로를 사용하게 합니다. 기존 데이터는 이동하거나 삭제하지 않습니다.

소스 업로드는 RCP_FUNCTION_BUILDER_SOCKET이 비어 있으면 설치된 빌더가 있어도 비활성화되어 503을 반환했습니다. 이제 제공된 systemd unit과 같은 기본 소켓 /run/rcp-function-builder/builder.sock을 사용합니다. 명시한 경로는 계속 우선하며, 빌더가 없어도 API와 WASM 직접 업로드는 시작할 수 있습니다.

Functions 오류를 Gin 서버 로그에 남기되 500 응답 본문의 내부 오류 마스킹은 유지합니다. 빌더 최초 설치 및 진단 방법도 README에 보완했습니다.

Test plan

  • 상대 경로 DB 생성 회귀 테스트: 수정 전 실패 확인, 수정 후 생성/INSERT/SELECT 통과
  • 기본 빌더 소켓 선택, 실제 Unix 소켓 HTTP 소스 전달, 누락된 소켓의 ErrBuildUnavailable 테스트
  • go test ./... passed
  • gofmt 및 git diff --check

Deployment notes

  • 표준 경로에 설치된 빌더는 별도 GitHub Secret 추가 없이 연결됩니다.
  • 빌더 서비스/이미지/Python WASM 런타임이 미설치된 서버는 README의 최초 설치가 여전히 필요합니다. 이 PR이 Docker 권한을 API 계정에 부여하거나 빌더를 자동 설치하지는 않습니다.
  • 보고된 운영 서버의 정확한 500/503 응답 본문과 설치 상태는 확인하지 못했습니다. 기본 상대 경로에서의 DB 생성 실패는 로컬로 재현했으며, GET /databases 실패나 빌더 미설치 등 다른 원인은 배포 후 서버 로그 확인이 필요합니다.

@haramj
haramj requested a review from jisung-02 September 29, 2026 02:34
@haramj
haramj merged commit f54c175 into main Oct 1, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants