Skip to content

[Fix] 격리 OpenProxy 시험의 Patroni 동기 역할 호환 어댑터 - #540

Merged
Gimini-3 merged 2 commits into
developfrom
fix/539
Oct 16, 2026
Merged

Gimini-3 merged 2 commits into
developfrom
fix/539

Conversation

@Gimini-3

Copy link
Copy Markdown
Contributor

발견

격리 Patroni 4.0.5의 strict 동기 /cluster 역할을 원본 OpenProxy가 역직렬화하지 못해 시작에 실패했습니다. TCP·HTTP·scope가 정상이어서 네트워크 문제와 구분했습니다.

변경

  • 격리 시험용 읽기 전용 역할 어댑터를 추가했습니다.
  • fresh scope를 매번 확인하고 sync_standby/quorum_standby만 replica로 변환합니다. Primary·Leader·기타 Metadata는 보존합니다.
  • 알 수 없는 역할·다른 scope·상류 오류는 502, 쓰기 요청은 405로 차단합니다.
  • 표준 Python 라이브러리만 사용하며 원본 바이너리·라이선스·공개 설정을 바꾸지 않습니다.

검증·한계

  • 실제 HTTP 계약 9/9 통과
  • 지정형·quorum 원본 호환 관측을 별도 보존
  • 공식 공급사 지원이나 운영 도입 완료가 아닙니다. 후속 HA 비교는 이 어댑터를 거친 결과로 명시합니다.

Closes #539

@Gimini-3
Gimini-3 requested a review from kangcheolung October 16, 2026 21:08
@coderabbitai

coderabbitai Bot commented Oct 16, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Repository: DocGrid/docgrid/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 9a15b13b-8861-4f66-bce4-0762aab22785
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Gimini-3 Gimini-3 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수동 검토: upstream scope를 매 요청 확인하고 cache 없이 native 응답을 읽습니다. sync_standby/quorum_standby만 replica로 바꾸며 Primary/Leader·나머지 Metadata를 보존합니다. unknown role·scope mismatch·상류 실패는 502, mutation은 405입니다. 지정한 private IPv4에만 바인딩하고 원시 주소/payload를 로깅하지 않습니다. 표준 라이브러리 외 의존성이 없습니다. HTTP 9개 시험·backend/frontend CI를 확인했습니다. 실제 원본 OpenProxy는 두 native 동기 역할을 모두 거부했고, 어댑터 경유 JDBC는 두 Proxy 모두 quorum ANY 1의 Primary에 도착했습니다. 원본 공식 지원·운영 적용과 분리한 격리 호환 계층입니다.

@Gimini-3
Gimini-3 merged commit fa9ee2d into develop Oct 16, 2026
3 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.

[Fix] 격리 OpenProxy 시험의 Patroni 동기 역할 호환 어댑터

1 participant