묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
mysql 데드락 발생
학습 관련 질문을 최대한 상세히 남겨주세요!고민 과정도 같이 나열해주셔도 좋습니다.먼저 유사한 질문이 있었는지 검색해보세요.인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요! 강의 재밌게 잘 듣고 있는 취준생입니다!테스트 실행 도중에 데드락이 발생하여 이에 관해 여쭤보고자 합니다. 구체적으로인 상황은article_view_count 테이블에 존재하지 않는 레코드를 삽입AND어플리케이션 실행 후, 첫 테스트 코드 실행 을 만족하는 상황에서 DeadLock 에러가 발생합니다. 아마 Lock 획득실패로 인한 에러가 표출되는것으로 보이며 에러 로그는 하단에 첨부했습니다. 제가 생각한 원인은 다음과 같습니다.UPDATE문임에 따라 해당 레코드에 X-Lock이 걸리며, 100개의 요청마다 UPDATE쿼리가 날라가지만, 첫 INSERT 요청의 트랜잭션이 완료되지 않아 이후의 트랜잭션이 잠금 대기롤백 첫 INSERT 요청이 오래 걸리는 이유를 알고 싶습니다.양질의 강의 제공해주셔서 감사합니다!2025-05-01T19:46:27.647+09:00 WARN 27109 --- [kuke-board-view-service] [io-9003-exec-63] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 1213, SQLState: 400012025-05-01T19:46:27.647+09:00 ERROR 27109 --- [kuke-board-view-service] [io-9003-exec-63] o.h.engine.jdbc.spi.SqlExceptionHelper : Deadlock found when trying to get lock; try restarting transactionHibernate: update article_view_count set view_count = ? where article_id = ? and view_count < ?2025-05-01T19:46:27.653+09:00 ERROR 27109 --- [kuke-board-view-service] [io-9003-exec-63] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.dao.CannotAcquireLockException: could not execute statement [Deadlock found when trying to get lock; try restarting transaction] [insert into article_view_count (view_count,article_id) values (?,?)]; SQL [insert into article_view_count (view_count,article_id) values (?,?)]] with root causecom.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
수치형 데이터 불러올때
type 확인 후 cols = ['age', 'fnlwgt', 'education.num', 'capital.gain', 'capital.loss', 'hours.per.week']이렇게 수치형 데이터의 열만 복사하는 거 말고 cols = X_train.select_dtypes(exclude='object').copy()를 사용해도 되나요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
default의 역할
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요 switch 문을 사용할 때 default를 사용하는데 이 부분을 사용하는 이유가 궁금합니다.아마도 int coupon 변수를 선언하고 초기화를 안 하는데 초기화를 위한 목적으로 사용한 걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
스케일링, 인코딩 등 데이터 작업후에
스케일링, 인코딩 등 데이터 작업후에 위로 올라가서 다시 실행하면 처음이라 결과값이 달라지고 오류가 생기는데 한 번 실행한 작업은 다시 건드리면 안되나요? 라벨인코딩, 원핫인코딩 모두 실행하고 분리한 데이터 다시 합쳤을 때 컬럼이 107로 나와야하는데 처음이랑 그대로인 15가 나오더라구요 다시 올라가서 실행하니 전부 오류가 뜹니다 ㅜㅠ!!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원-핫 인코딩
원-핫 인코딩 했을 때 데이터가 0또는 1이 아니라 false나 true로 나오는데 문제 없는 건가요?false를 0으로 true를 1로 보면 될까요?
-
해결됨스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
페이징 방식의 readAll에서 count 쿼리 변경?
학습 관련 질문을 최대한 상세히 남겨주세요!고민 과정도 같이 나열해주셔도 좋습니다.먼저 유사한 질문이 있었는지 검색해보세요.인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.[댓글 수 구현] 강의의 마지막에서 페이징 방식 readAll() 메소드에서 commentRepository.count(~)를이번에 ArticleCommentCount를 활용하여 구현한 count(articleid)로 바꿔도 된다고 말씀하셨는데, 둘이 엄밀히 다르지 않나요?? 기존에 구현한 commentRepository.count(~)는 게시글별 댓글수를 조회하지만 limit가 있고,이번에 구현한 count(articleId)를 limit 없이 그냥 게시글에 대한 댓글 수를 모두 조회하니 의미가 다르지 않나 싶어서 질문드려봅니다!
-
미해결우디의 프리미어 프로 강좌
강의 수료 시 어느정도의 편집까지 가능한지
안녕하세요! 좋은 강의 무료로 공유해주셔서 너무 감사합니다!혹시 이 강의를 다 듣게 되면 어느정도의 영상 편집까지 할 수 있게 될까요?이제 시작하려고 하는데 두근두근합니다~!
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
API 이용할때 @Transactional
API를 이용할때 Service를 거치지 않고 Repository를 사용하여 DB에 접근하게되는데 @Transactional를 Repository마다 붙이지 않는 이유를 알 수 있을까요? 어디서 Transactional을 걸어주는지 모르겠습니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
도움이 필요해요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.따라서 해보았지만 해결이 안됩니다.
-
미해결김영한의 실전 자바 - 중급 1편
중첩 클래스 내 private 멤버도 부모 클래스에서 접근가능합니다.
중첩 클래스와 외부 클래스는 private 변수에 접근할 수 있도록 명시되어있다고합니다.단 완전한 외부 클래스에서 중첩클래스를 사용하면 접근이 당연히 안됩니다.
-
미해결김영한의 실전 자바 - 기본편
접근제이자 문제2번 ShoppingCart 클래스 내 calculateTotalPrice 메서드 중 Item 인스턴스 생성 이유가 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. 수강 중 궁금한 내용이 있어 질문드립니다. 강사님 코드를 보면private int calculateTotalPrice() { int totalPrice = 0; for (int i = 0; i < itemCount; i++) { Item item = items[i]; totalPrice += item.getTotalPrice(); } return totalPrice; }처럼 for 문 안에서 Item item = items[i];로 새로운 인스턴스를 만드셨는데 문제 풀이를 보기 전 아래와 같이 인스턴스 생성 없이 풀었더니 똑같은 결과가 나왔습니다.private int calculateTotalPrice(){ int totalPrice = 0; for (int i = 0; i < count; i++){ totalPrice += items[i].totalPrice(); } return totalPrice; } 혹시 강사님께서 새로운 생성하신 이유가 따로 있으실까요?
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
simplyscroll Plugin에 대해서 질문드립니다.
섹션3에서 simplyscroll Plugin을 사용해서 사진들이 사선을 흘러가는 갤러리 부분에서 질문드립니다.수업자료로 받은 플러그인도 연결하고 소스도 그래도 넣었지만 요소검사를 했을때 아래 클래스가 붙어있어야 하는데 전혀 붙지가 않아서요,갭처한 코드 이미지를 보고 그대로 몇번을 다시 해봤지만 되질않아서요그 부분까지만 완성한 파일을 받아볼수 있을지요?kwanggony@naver.com.simply-scroll .simply-scroll-clip{}
-
해결됨홍정모의 따라하며 배우는 C언어
13.6강 2분 8초경 fseek(fp,2L,SEEK_SET)함수에 질문있습니다.
안녕하세요, 13.6강 강의를 듣다가 의문이 생겨 질문 남깁니다. 2분 8초경 fseek(fp,2L,SEEK_SET) 함수를 사용하실 때 2L의 의미가 2 Long이며, 파일 내에서 "시작점으로부터 2바이트 떨어진 곳으로 이동한다"고 하셨습니다.비주얼 스튜디오에서 Long의 사이즈는 4바이트로 알고 있는데 2L이면 8바이트 이동한 거 아닌가요? 파일 내 문자 하나의 크기가 4바이트라서 2L이면 2칸 이동한 건가요? 만약 그게 맞다면 long 대신 int를 사용해도 되는 건지까지도 궁금합니다. 감사합니다.
-
미해결Airflow 마스터 클래스
task run fail
섹션3. Bash operator DAG 만들기 & DAG 디렉토리 셋팅안녕하세요, 에어플로우에 dags_bash_operator를 올리면 사진과 같이 몇 번을 시행해도 사진과 같이 실패합니다.sudo docker ps로 상태 확인해보면 별다른 문제가 없는 것 같은데, 문제의 원인이 무엇일까요?
-
미해결실습으로 손에 잡히는 SQLD의 정석(2과목)
환경설정 오류 봐주세요
-
미해결처음 만난 리액트(React)
교재 구입해서 강의 들으려고 하는데 커리큘럼이 없어졌어요.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.교재 구입해서 강의 들으려고 하는데 커리큘럼이 없어졌어요.이제 못 듣게 된건가요?
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
Variable Replication
서버에서 OnRep_Counter()를 따로 호출해줘야 하는 이유는 ReplicatedUsing을 사용하는데DOREPLIFETIME_CONDITION_NOTIFY()을 사용하지 않고 DOREPLIFETIME을 사용했기 떄문 아닌가요? ReplicatedUsing은 DOREPLIFETIME_CONDITION_NOTIFY() 이랑 같이 사용해야하는 것으로 알고 있습니다.
-
해결됨한 입 크기로 잘라먹는 타입스크립트(TypeScript)
4:00 let c에 할당되는 type이 다르게 나옵니다.
let c: StringNumberSwitch<string | number> 제가 이렇게 작성을 했는데요 선생님의 말씀대로라면 string이 먼저 StringNumberSwitch를 통해서 number 타입이 되고, number타입이 다음으로 들어가서 string 타입이 되어 최종적인 c의 타입은 number | stinrg이어야 하는 게 맞지 않나요?저는 사진과 같이 string | number이렇게 나옵니다.이렇게 순서를 바꿔봐도 똑같이 나옵니다.
-
해결됨함수형 프로그래밍과 JavaScript ES6+ 응용편
이미지 동시성 다루기
C.takeAll에서 궁금한 점이 있습니다.C.takeAll가 추가되기 전에 지연평가를 통해 배열에서 하나씩 fade-in 클래스를 달아주고 있었다면추가한 후에는 배열의 지연평가가 모두 끝난 뒤에 달아주는 동작으로 보이더라구요.시작은 다같이 하지만, 먼저 끝나는 것부터 fade-in 클래스를 달아주는 방식은 어떻게 해야할지 감이 안옵니다.혹여나 앞에 이해가 잘못된 것이 있다면 편하게 알려주세요. 감사합니다!
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템
SkillData 구조체 질문
갑자기 궁금해져서 질문드려봅니다. SkillData, EffectData등이 struct로 구현되어 있는데,struct 내부에 참조타입이 많은 상황이잖아요? 이럴 경우 struct 내부의 참조타입이 얕은 복사가 일어날 수 있어 에디터의 추가 버튼에서 DeepCopySerializeReference 메소드를 구현해 사용 중인 것 같은데,SkillData, EffectData등을 class로 구현해 IClonable을 상속받아 Clone 메소드로 추가시키는 것과 어떤 차이가 있을지, struct로 구현을 하신 이유가 있는지 등이 궁금합니다.