어느날 DB에 SQL 쿼리를 진행시키는 평범한 일상이..
평범하지 않는 날이 되었다.
필자는 현업에서 PostgreSQL 사용하고 있다.
"무엇무엇 데이터 요리저리 처리해주세요."
요청에 어느 날처럼 운영DB 데이터 testDB에 롤백하고, testDB에서 SQL 쿼리 동작해보고
마지막으로 운영DB SQL 쿼리 동작 시도했으나
read-only transaction
왜 때문에 읽기 전용이 되었니..?
네트워크가 약한가?
AWS RDS 인스턴스 보안문제? 설정값 문제?
디비버 문제인가 하고 찾아보니 디비버에서 transaction 에러가 심심치 않게 발생하는 것 같다.
PostgreSQL 에서 read-only transaction 상태일 때 오직 SELECT
만 동작한다.
WHERE, UPDATE, DELETE
동작하지 않는다.
디비버는 커넥션 이상 발생시 바로 read-only transaction 전환하는 것 같았다.
필자는 해당 에러 전에 디비버 업데이트를 했다..
아마 업데이트 중에 꼬인게 아닐지 가정할 뿐이다.
해결방법은 바로 순정상태로 돌아가는 것.
디비버를 지우고 다시 설치하는 방법이다.
다른 포스팅에서 재연결 하거나, 관련 버튼을 전체를 클릭해주는 방법이 있었으나 그럼에도 안되었기에.
파인더에서 디비버를 삭제한 다음 다시 시작하니 해결.