같은 클래스의 자기 호출은 @Transactional을 건너뜁니다
작성자: Unknown주제: 같은 클래스의 자기 호출(self-invocation)은 프록시(proxy)를 건너뛰어 @Transactional이 적용되지 않는다
조회수: 2좋아요: 0
프록시자기호출롤백
용어 8개
- 프록시 (proxy) — 언어·런타임 — 호출을 대신 받아 실제 객체에 위임하는 대리 객체
- 자기 호출 (self-invocation) — 백엔드 · 언어·런타임 — 객체가 자신의 메서드를 this로 직접 호출하는 것
- 트랜잭션 전파 (transaction propagation) — 데이터베이스 · 백엔드 — 이미 진행 중인 트랜잭션에 메서드 호출이 참여할지 새로 시작할지를 정하는 규칙
- CGLIB — 언어·런타임 — 런타임에 클래스의 하위 클래스를 생성해 메서드 호출을 가로채는 바이트코드 생성 라이브러리
- 스레드 로컬 (ThreadLocal) — 언어·런타임 — 스레드마다 독립된 값을 저장하는 변수 저장소
- 빈 후처리기 (BeanPostProcessor) — 백엔드 — 빈 생성 전후에 끼어들어 빈 객체를 검사하거나 변경하는 컴포넌트
- 런타임 예외 (RuntimeException) — 언어·런타임 — 컴파일러가 처리를 강제하지 않는 비검사 예외 클래스
- 지연 로딩 (lazy loading) — 데이터베이스 · 백엔드 — 연관된 데이터를 실제로 사용하는 시점까지 조회를 미루는 방식
제작 기록
- 작성 모델
- xai/grok-4.7 (high)
- 버전
- v1 → v2 (발행본 v3)
- 토큰
- 339,088
- 수준
- 300
| 단계 | 모델 | 프롬프트 | 시도 | 토큰 | 결과 |
|---|---|---|---|---|---|
| 주제 제안 | xai/grok-4.7 (high) | 1 | 22,725 | 시도 1회, 확정 시도 1 | |
| 작성 | xai/grok-4.7 (high) | 1 | 40,401 | v1 게이트 통과 | |
| 리뷰 | anthropic/claude-opus-5-5 (high) | 1 | 18,991 | FULL REQUEST_CHANGES, CRITICAL 1·MINOR 4·NITPICK 1 | |
| 사실 확인 | google/gemini-4-argon (high) anthropic/claude-haiku-5-5 (low) | 2 | 34,016 | FULL APPROVE, MINOR 11, 주장 UNVERIFIABLE 10 | |
| 리뷰 | anthropic/claude-opus-5-5 (high) | 1 | 18,917 | FULL REQUEST_CHANGES, MAJOR 2·MINOR 2 | |
| 수정 | xai/grok-4.7 (high) | 2 (실패 1) | 60,706 | v2 게이트 통과, 수용 3·기각 0·범위 밖 0 | |
| 리뷰 | anthropic/claude-opus-5-5 (high) | 1 | 23,300 | SPOT_CHECK APPROVE, 지적 없음 | |
| 사실 확인 | google/gemini-4-argon (high) anthropic/claude-haiku-5-5 (low) | 2 | 21,285 | SPOT_CHECK APPROVE, 지적 없음, 주장 UNVERIFIABLE 7 | |
| 리뷰 | anthropic/claude-opus-5-5 (high) | 1 | 24,354 | SPOT_CHECK APPROVE, 지적 없음 | |
| 다듬기 | anthropic/claude-opus-5-5 (medium) xai/grok-4.7 (high) | 2 | 30,603 | 적용 3·버림 0, 새 버전 v3 | |
| 최종 읽기 | anthropic/claude-opus-5-5 (high) | 1 | 13,579 | 지적 2건(차단 0) | |
| 수준 판정 | anthropic/claude-opus-5-5 (medium) | 1 | 12,499 | 수준 300 | |
| 용어 추출 | anthropic/claude-haiku-5-5 (low) | 1 | 17,712 | 용어 8건(보류 0, 버림 1) |