REQUIRES_NEW로 인한 DB 커넥션 리소스 고갈
·
트러블슈팅
현재 getOrCreateUser(소셜 로그인) 메서드는 DB 커넥션 두 개가 필요하다.@TransactionalgetOrCreateUser ( ) { 1. id token 검증 - 공개키 생성 및 조회 2. user 조회 가입된 유저 -> 조회 결과 반환 미가입 유저 -> createUser 메서드 호출 ( REQUIRES_NEW ) 3. access token 발급} max-thread-pool = 10인 상태에서, getOrCreateUser 메서드를 실행하면 10개의 스레드가 커넥션을 하나씩 점유하게 된다. 이때 모든 요청이 미가입된 유저였다면, 모든 스레드가 REQUIRES_NEW 메서드들 실행해야한다. 이렇게 되면, 모두가 서로가 가진 DB 커넥션을 기다리지만..
testImplementation 'org.testcontainers:rabbitmq:1.20.4' 2 vulnerabilities found in dependency
·
트러블슈팅
"2 vulnerabilities found in dependency:GHSA-4g9r-vxhx-9pgx8.1Transitive Apache Commons Compress: Denial of service caused by an infinite loop for a corrupted DUMP fileGHSA-4265-ccf5-phj55.5Transitive Apache Commons Compress: OutOfMemoryError unpacking broken Pack200 file"org.testcontainers:rabbitmq:1.20.4 의존성 추가해줬더니 이와 같은 경고 메시지가 발생했습니다.  testImplementation 'org.testcontainers:rabbitmq:1.20.4' t..
[DockerCompose]Error: "failed to create task for container: Unavailable: error reading from server
·
트러블슈팅
블루 컨테이너가 동작 중일 때 도커 컴포즈를 이용하여 그린 컨테이너를 만들고, 실행시키는 명령어를 입력했다.도커 컴포즈 명령어는 잘먹혔는데, 문제는 컨테이너가 Created 상태에서 도무지 Up 상태로 변경되지 않는다는 것이었다. 이와 더불어, EC2 접속이 안되는 문제가 발생했다. 즉 먹통이 됐다! TRY 1: 로그... 로그를 보자 docker logs spring-greenUp이 되지 못하는 비운의 컨테이너의 이름은 spring-green이었다. 그런데 컨테이너 로그가 아무것도 안보였다. 쩝그래서 도커 데몬 로그도 보고, 괜히 spring-blue나 aws 관련 로그를 뒤적거려봤는데 이상이 없었다. 일단 다른 것들을 먼저 확인해보기 시작했다. TRY 2: 네트워크를 보자뮤넥팅 서버는 레디스를 인증/..
[Redis Error] Unable to send PING command over channel
·
트러블슈팅
"2024-10-21T15:09:37.643Z ERROR 1 --- [munectingV4] [isson-timer-4-1] o.r.c.handler.PingConnectionHandler : Unable to send PING command over channel: [id: 0x35370019, L:/172.18.0.3:38076 - R:redis/172.18.0.2:6379] org.redisson.client.RedisTimeoutException: Command execution timeout for command: (PING), params: [], Redis client: [addr=redis://redis:6379] at3.36.0 버전을 사용하고 있었는데, 3.37.0 버전으로 업그레이드하..
springboot Could not move temporary workspace 오류
·
트러블슈팅
새로 프로젝트를 만들고 프로젝트 빌드 진행 시 springboot Could not move temporary workspace 오류가 발생했다.아래 글과 같은 상황이었고, 보안 프로그램의 실시간 보호 기능을 비활성화해서 해결했다. 보호 솔루션이 Spring Boot의 파일 작업을 의심스러운 활동으로 감지하고 차단했나보다.   https://www.inflearn.com/questions/1209468/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EC%B2%AB-%EC%8B%A4%ED%96%89%EB%B6%80%ED%84%B0-%EA%B3%84%EC%86%8D-%EC%98%A4%EB%A5%98%EA%B0%80-%EB%82%98%EC..
org.hibernate.sql 미작동
·
트러블슈팅
로거를 통한 쿼리문 로깅을 위해 logging.level.org.hibernate.sql: debug 를 application.yaml에 작성해주었으나 제대로 작동하지 않는 것을 발견하였다.  이 문제는 logging.level.org.hibernate.SQL: debug 와 같이 'sql'을 'SQL'로 작성해주면 해결된다. logging.level.org.hibernate.sqllogging: level: org.hibernate.sql: debug org.hibernate.type: trace🔼실행결과 쿼리문 확인 불가logging: level: org.hibernate.SQL: debug org.hibernate.type: trace🔼실행결과 정상적으로 출력된 쿼리문 ..
Git "There is no tracking information for the current branch. Please specify which branch you want to merge with. "오류
·
트러블슈팅
오류 상황git pull을 입력했는데,"There is no tracking information for the current branch.Please specify which branch you want to merge with" 메시지가 나온다!  혹여나 git clone이 아닌 git init + git pull  조합으로 원격 저장소(git)에 있는 프로젝트를 로컬로 받아오려고 시도한 경우 해당 해결 방법으로 해결을 시도해보자.✅git clone 명령어를 사용하여 원격 저장소를 로컬에 복제(clone)했다면, 원격 저장소의 기본 브랜치(보통 master나main 브랜치)가 로컬 브랜치와 자동으로 연결(tracking)된다.✅git init을 사용하는 경우 수동으로 원격 브랜치를 로컬 브랜치와 연결..
git push author 변경
·
트러블슈팅
더보기프로젝트 중 소스트리로 깃을 사용할 때 문제가 생겨 이것저것 건드리다가 다른 계정으로 git push를 했다는 것을 지금 발견했다...어쩐지 이상하더라. 고쳐봅시다 23.09.20개인 repo에서 test후에 고치려고했는데... author를 변경하면 커밋한 날짜까지 함께 업데이트 되기 때문에다른 분의 커밋 시간대까지 바뀌어버려서 안(못)하기로 했다! 그래도 언제 쓰일지 모르니 방법을 정리해놓도록하겠다. 1. git rebase -i 커밋id! 수정하고자 하는 커밋 전에 있는(꼭 직전이 아니어도 된다) 커밋 아이디를 입력하자.!1번처럼 입력할 경우 입력한 커밋 id 다음 커밋부터 수정할 수 있기 때문이다. 2.(1) 1번의 결과로 커밋 log 마냥 커밋들이 좌르륵 뜬다.2.(2) i를 누르면 글자를..