묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
언리얼엔진 디버깅 관련 질문드립니다.
안녕하세요, 언리얼 프로그래밍 강의를 수강중인 문민철입니다.언리얼엔진 코드 분석 및 디버깅 중, 궁금한 사항이 있어 질문드립니다.Unreal Engine의 에디터를 켜고, 새로운 프로젝트를 생성하는 과정을 디버거로 추적하면, CreateProcess(NULL, CommandLine.GetCharArray().GetData(), nullptr, nullptr, bInheritHandles, (::DWORD)CreateFlags, NULL, OptionalWorkingDirectory, &StartupInfo, &ProcInfo) 를 통하여 새로운 프로세스를 실행시키고, 에디터를 종료합니다. (해당 코드는 WindowsPlatformProcess.cpp - line 357에 있습니다.)즉, 언리얼 엔진 소스 코드를 디버깅할 때, 에디터 시작 화면에 대한 내용만을 보게 됩니다.게임 프로젝트 분석, 엔진 내 주요 기능 분석을 위해서는 엔진 내부의 주요 기능을 사용해 보면서 분석해야 할 것으로 보이는데, 디버깅 방법론이 궁금해서 질문드립니다. (물론 c++ 게임에 대해, 게임 프로젝트를 시작 프로젝트로 설정하고(ex: LyraStarterGame) 디버깅을 시작하면 게임 내 구현된 로직을 디버깅할 수 있는 것을 알고 있습니다.1. UE5를 실행하는 것(ex: UE5.sln)과 게임 프로젝트(ex: LyraStarterGame)를 실행하는 것의 차이가 궁금합니다. - WinMain 함수로 전달되는 pCmdLine 인자가 다른것 등 피상적인 차이는 확인하였습니다만, 깊은 이해를 원합니다. (설명이 어렵거나 너무 길다면, 관련 자료를 추천해주시면 감사하겠습니다)2. 언리얼엔진을 소스 코드를 빌드하여 디버깅하는 것과, '디버깅을 위한 편집기 기호'를 포함한 실행 파일을 이용하여 디버깅하는 것(에픽게임 런처에서 언리얼엔진을 다운)의 차이가 있는지 궁금합니다.3. 대규모 코드를 분석하는 방법론과 팁을 알고 싶습니다. (ex: 특정 기능을 수행하고, 그 수행에 관련된 코드를 분석)감사합니다.
-
미해결[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
Kafka port 9092 already in use 문제
안녕하세요 zookeeper 실행 완료하고이제 마지막으로 Kafka 를 실행하면 완료 되는데요. (이미지 안보이시면 ㅠ,ㅠhttps://cdn.inflearn.com/public/files/posts/769307aa-6074-40cd-9d9d-94ffb82f7508/cccccc.PNG) 기본 default port 가 9092 설정된 상태에서 실행하면 이미 사용된 포트라고 에러가 발생 됩니다.혹시나 해서 9093 으로 설정해도 문제가 발생되네요... 참고로 꼭!! 9092 포트로 설정하고 프로세스 올리고 싶습니다 ㅠ,.ㅠ 그래서 혹시 9092 포트가 사용되고 있나 netstat -ano | findstr :9093 명령어 통해 확인을 해도 사용하는 포트가 없다고 나오는데요... 무슨 문제일까요?... 참고로 OS는 윈도우 입니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2 실전 환경 연습 pd.dataframe 시 에러 해석 부탁드립니다
pd.DataFrame({'cust_id': X_test['cust_id'], 'gender': pred})기재하였는데요, 아래 에러 화면이 뜨는데 해석이 불가하여 문의드립니다. > Makefile:6: recipe for target 'py3_run' failedmake: *** [py3_run] Error 1Traceback (most recent call last): File "/goorm/Main.out", line 37, in <module> pd.DataFrame({'cust_id': X_test['cust_id'], 'gender': pred}) File "/usr/local/lib/python3.9/dist-packages/pandas/core/frame.py", line 636, in init mgr = dict_to_mgr(data, index, columns, dtype=dtype, copy=copy, typ=manager) File "/usr/local/lib/python3.9/dist-packages/pandas/core/internals/construction.py", line 502, in dict_to_mgr return arrays_to_mgr(arrays, columns, index, dtype=dtype, typ=typ, consolidate=copy) File "/usr/local/lib/python3.9/dist-packages/pandas/core/internals/construction.py", line 120, in arrays_to_mgr
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
DB관련
마리아 디비로 해도 상관없는거죠?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5회 기출유형(작업형2)
안녕하세요. 강의 잘 듣고 있습니다.보통 작업형2 실행시 train 데이터 id drop하고, test 데이터 id pop처리 했는데(작업형2 모의문제1 에서는 CLIENTNUM 드롭 및 팝처리 함)5회 작업형 2에서는 실시 안 하셨길래... 다른 이유라도 있으신지 궁금합니다.submit으로 내보내기해야하는 값에 price만 있어서 그런가요? 언제 해야하고.. .언제 안 해야하는지.. 넘 헷갈려서요.model을 없애고 돌린게.. rmse가 더 높긴 하더라구요.... ^^;;train = train.drop('model', axis = 1) test_model = test.pop('model')
-
미해결애플 웹사이트 인터랙션 클론!
[스크롤 높이 세팅] scrollHeight값이 3990아닌 4645로만 나오는데 뭐가 문제일까요? ㅠㅠ
(() => { const sceneInfo = [ { // 0 type: 'sticky', heightNum: 5, // 브라우저 높이의 5배로 scrollHeight 세팅(디바이스 마다 높이가 다르기에 각 기계가 가진 높이를 불러오고 곱해준다.) scrollHeight: 0, }, { // 1 type: 'normal', heightNum: 5, scrollHeight: 0, }, { // 2 type: 'sticky', heightNum: 5, scrollHeight: 0, }, { // 3 type: 'sticky', heightNum: 5, scrollHeight: 0, } ]; function setLayout() { //각 스크롤 섹션의 높이 세팅 for (let i = 0; i < sceneInfo.length; i++) { sceneInfo[i].scrollHeight = sceneInfo[i].heightNum * window.innerHeight; } console.log(sceneInfo); } setLayout(); })(); 4645값으로 그대로 진행해도 될까요?
-
미해결토비의 스프링 부트 - 이해와 원리
intellij 기본 터미널을 warp 로 변경 방법 알려주셔요.
안녕하세요.제목대로 intellij 터미널이 현재는 zsh 로 되어 있는데 외부 어플인 warp 로 변경하는 방법 좀 알려주시면 감사하겠습니다.꾸우벅~~
-
미해결그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
인증서만료(?) 로 인한 kubelet 실행 실패
안녕하세요ova 이미지(1.22)를 이용하여 실습환경을 재구성하였으나, 인증서 만료로 인한 문제인지 kubelet 실행이 되지 않는 상황입니다.로그 확인 시 아래와 같은 로그가 확인되어, kubeadm 명령을 통해 인증서 renew 를 진행하였으나 문제는 동일합니다.Jun 9 23:46:29 m-k8s kubelet: E0609 23:46:29.935776 1235 bootstrap.go:265] part of the existing bootstrap client certificate in /etc/kubernetes/kubelet.conf is expired: 2023-05-20 00:32:02 +0000 UTCJun 9 23:46:29 m-k8s kubelet: E0609 23:46:29.935812 1235 server.go:294] "Failed to run kubelet" err="failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory"인증서와 bootstrap-kubelet.conf 파일이 연관이 있는 것 인지 또한 궁금합니다.위 이슈에 대한 원인, 해결방안등을 설명해주시면 감사하겠습니다.감사합니다.
-
해결됨스프링 핵심 원리 - 기본편
객체 생성에 대해 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)아니요3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)네[질문 내용]저와 같은 생각을 하신분이 질문을 했는데제가 이해한게 맞는지 여쭤봅니다.ApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class); 이게 아닌 AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class);으로 강의에서 말씀하셨는데개방 폐쇄 원칙에는 ApplicationContext 를 사용하는게 맞지만AnnotationConfigApplicationContext 에서 필요한 기능이 있기때문에 AnnotationConfigApplicationContext 이걸로 사용했다고 보면 될까요? 개방 폐쇄 원칙에는 어긋나지만 테스트기때문에 사용했다 라고 보면 될까요?
-
미해결중상급 퍼블리싱을 위한 CSS3의 모든 것
float: right 요소가 아래에 배치되는 이유 쉽게 설명
강의에서 나온 것처럼 하나는 float:left 하나는 margin:auto 하나는 float: right시 마지막 요소가 아래에 배치됩니다. 생각해보면 이것은 너무나도 당연한 것입니다.마지막 요소의 float:right을 꺼보면이렇게 되죠. 왜 이렇게 되는지 모르겠다면, 그냥 float와 margin:auto를 적용시키지 않고, div 요소 3개를 그냥 그대로 놔두면이렇게 차곡차곡 쌓이게 되죠!그렇기에 마지막 요소를 float: right을 하면 자기가 갈 수 있는 가장 오른쪽으로 가게 되는 거죠그러면 다시 돌아가서 왜 첫번째 요소는 float:left를 했을때 중간 요소와 같은 줄에 있는 거고, 2,3 요소 순서를 바꾸면 해결이 될까요?우선 1번 요소가 float:left로 배치가 되어도 없는 아이처럼 작동하죠. 그러니까 중간 요소가 배치될때는 1번 요소는 없는 것처럼 무시를 하고 혼자만 있을 때 처럼 가운데에 오게 되겠죠. 그러나 2,3 요소 순서를 바꾸면원래처럼 1번 요소는 왼쪽에 가고, 그다음에 오는 것이 3번(float:right)요소가 되니까 이 아이도 1번 요소가 없을때와 동일하게 그냥 오른쪽으로 가겠죠. 그다음에 2번 요소(margin:auto)가 배치 되려고 하는데, 이전에는 1번 요소만 무시했다면 이번에는 1,3 요소 모두 무시하고 그냥 아무것도 없는 것처럼 가운데에 오게 되는 거죠!
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
OneToOne 관계
USER와 Profile테이블은 OneToOne 관계입니다.근데 서로 하나씩만 존재하다면 그냥 USER테이블에 Profile을 넣어버리면 되는거 아닌가요?OneToOne 관계를 유지하는 특별한 이유가 있나요??하나의 테이블이 커지는걸 방지하기 위해 OneToOne 관계를 형성하는 걸까요?
-
해결됨실습으로 배우는 선착순 이벤트 시스템
Coupon 도메인 중복
안녕하세요. 좋은 강의 항상 감사드립니다.Coupon 도메인 중복 관련해서 질문이 있습니다.consume 모듈을 새로 생성하면서 Coupon 도메인을 api 모듈에서 복붙을 하셨는데요.gradle 멀티 모듈을 만들 때 부모/자식 관계로 만들면 Coupon 도메인을 중복되지 않게 사용할 수 있을 것 같은데 강의에서는 시간상 패스한 것인가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형3 예시문제 ttest_rel
ttest_rel 파라미터 중에 a,b가 있는데요강의에서 설명주신 건치료 후 혈압 - 치료 전 혈압이렇게 표시되어 있으니 순서대로 넣어야 한다고 했는데요. 치료 전 혈압 - 치료 후 혈압 이라면stats.ttest_rel(df['bp_before'] - df['bp_after'])위와 같이 작성해야 하는 것으로 이해했습니다. 여기서, ttest_rel 유형은 예시문제 처럼 무조건 두 집단(혹은 조치 전 집단과 조치 후 집단)이 있고, 두 집단 사이의 차이를 이용하는 게 맞을까요?! a와 b를 그냥 설명주신대로만 이해하면 되는지 문의드립니다.
-
미해결처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
early stopping관련
안녕하세요, tensorflow로 다른 강의들을 듣다가 torch를 공부하기 시작한지 얼마안돼서 여쭤보는 질문입니다.tensorflow에서는 callback함수로 간단히 earlystopping이나 checkpoint등을 가져와 쓸 수 있는 모듈이 있는걸로 알고있습니다. 혹시 torch에서는 그런 모듈이 따로 없는건가요?
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
컨트롤드디자인패턴과일반디자인패턴의 차이점
음.. 안녕하세요 지금 controlled design 패턴이랑common design 패턴ㅇㅣ랑 아무리봐도 똑같아서.. 고민이 많이 됩니다.둘다 에밋 프롶스를 이용한 거고 구조적으로는 상위에서 데이터를 조작하여 하위로 다시 내려주는구조로차라리 슬롯과 좀 디자인패턴이 차이잇는거같고 일반과는 거의 똑같아서 설명보충이 필요해 보입니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제 1 질문2
import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, roc_auc_score train n_train = train.select_dtypes(exclude = object).copy() c_train = train.select_dtypes(include = object).copy() n_test = test.select_dtypes(exclude = object).copy() c_test = test.select_dtypes(include = object).copy() from sklearn.preprocessing import MinMaxScaler cols = ['Customer_Age','Dependent_count', 'Months_on_book', 'Total_Relationship_Count', 'Months_Inactive_12_mon', 'Contacts_Count_12_mon', 'Credit_Limit', 'Total_Revolving_Bal', 'Avg_Open_To_Buy', 'Total_Amt_Chng_Q4_Q1', 'Total_Trans_Amt', 'Total_Trans_Ct', 'Total_Ct_Chng_Q4_Q1', 'Avg_Utilization_Ratio'] scaler = MinMaxScaler() n_train[cols] = scaler.fit_transform(n_train[cols]) n_test[cols] = scaler.transform(n_test[cols]) c_train = pd.get_dummies(c_train) c_test = pd.get_dummies(c_test) train = pd.concat([n_train, c_train], axis =1) test = pd.concat([n_test, c_test], axis =1) train = train.drop('CLIENTNUM', axis =1) test = test.pop('CLIENTNUM') from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split( train, train['Attrition_Flag'], test_size = 0.2, random_state = 2023 ) from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import roc_auc_score model = RandomForestClassifier(random_state = 2023) model.fit(X_tr, y_tr) pred = model.predict(X_val) print(pred) # 정확도 print(accuracy_score(y_val, pred)) # 정밀도 print(precision_score(y_val, pred)) # 재현율 (민감도) print(recall_score(y_val, pred)) # F1 print(f1_score(y_val , pred))위와 같이 코드를 진행시[0 1 0 ... 1 0 1]1.01.01.01.0 이 나옵니다. pred 자체가 1차원으로만 나오고 정확도 정밀도 재현율 F1도 1.0으로만 나오는데 무엇이 잘못된건지 모르겠습니다ㅠㅠ
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
데이타소스없이 JpaRepository 작동하는 이유
안녕하세요.문득 스프링 데이타 JPA로 테스트 진행 중 없는 테이블을 만들어주는 기능을 보니 db에 커넥션이 없이 이 모든 게 진행된다는 게 갑자기 낯선 느낌이 들었습니다.쿼리를 만들고 날리는 과정이 커넥션 여부와 관계없이 실행되는 것인가요? 어떻게 데이타소스 없이 작동하는건지 조금 이상하다는 생각이 듭니다.트랜잭션과 관련있는 내용은 아니지만 강의에서 설명을 들으니 문득 궁금해져 질문 드립니다.감사합니다.
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
5:30 packet이 L3간 단위고 L2 단위 가 frame인거죠?
아닌가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제1 질문
작업형2 문제마다 어떤문제들은 n_train, c_train, n_test, c_test로 나누는 문제들이 있고 그렇지 않은 문제들이 있어서 헷갈리는데요. 수치형변수를 스케일링하는 과정을 거치려면 n_train, c_train, n_test, c_test로 나눠야 하고,스케일링 과정을 생략하고 범주형 변수 인코딩 과정만을 진행할때는 나눌필요가 없는게 맞나요? 작업형 모의문제 1을 혼자 풀어보는 와중 MinMaxScaler로 스케일링을 해보는중인데 from sklearn.preprocessing import MinMaxScaler cols = ['CLIENTNUM', 'Customer_Age','Dependent_count', 'Months_on_book', 'Total_Relationship_Count', 'Months_Inactive_12_mon', 'Contacts_Count_12_mon', 'Credit_Limit', 'Total_Revolving_Bal', 'Avg_Open_To_Buy', 'Total_Amt_Chng_Q4_Q1', 'Total_Trans_Amt', 'Total_Trans_Ct', 'Total_Ct_Chng_Q4_Q1', 'Avg_Utilization_Ratio'] scaler = MinMaxScaler() for col in cols: n_train[col] = scaler.fit_transform(n_train[col]) n_test[col] = scaler.transform(n_test[col])ValueError Traceback (most recent call last)<ipython-input-38-b70edfd82bf0> in <cell line: 5>() 4 scaler = MinMaxScaler() 5 for col in cols: ----> 6 n_train[col] = scaler.fit_transform(n_train[col]) 7 n_test[col] = scaler.transform(n_test[col]) 85 frames/usr/local/lib/python3.10/dist-packages/sklearn/utils/validation.py in check_array(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, estimator, input_name) 900 # If input is 1D raise error 901 if array.ndim == 1: --> 902 raise ValueError( 903 "Expected 2D array, got 1D array instead:\narray={}.\n" 904 "Reshape your data either using array.reshape(-1, 1) if "ValueError: Expected 2D array, got 1D array instead: array=[0.58522152 0.08465774 0.60121236 ... 0.06531669 0.06194963 0.52375209]. Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample. 위와 같은 오류가 발생합니다. 혹시 어떤 부분이 잘못된걸까요?반면에 아래와 같이 실행할 경우 오류가 발생하지않습니다. 강의에서는 cols안에 컬럼값이 여러개이므로 반복문을 써야한다고 배웠는데 제가 잘못알고있는걸까요?from sklearn.preprocessing import MinMaxScaler cols = ['CLIENTNUM', 'Customer_Age','Dependent_count', 'Months_on_book', 'Total_Relationship_Count', 'Months_Inactive_12_mon', 'Contacts_Count_12_mon', 'Credit_Limit', 'Total_Revolving_Bal', 'Avg_Open_To_Buy', 'Total_Amt_Chng_Q4_Q1', 'Total_Trans_Amt', 'Total_Trans_Ct', 'Total_Ct_Chng_Q4_Q1', 'Avg_Utilization_Ratio'] scaler = MinMaxScaler() n_train[cols] = scaler.fit_transform(n_train[cols]) n_test[cols] = scaler.transform(n_test[cols])
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
default_batch_fetch_size 설정을 지워도 지연로딩이 적용되지 않습니다.
default_batch_fetch_size 설정을 주었을때 쿼리가 나가는것과 default_batch_fetch_size 설정을 주석처리 했을때 쿼리 나가는것을 비교해보고 싶어서 테스트 코드를 아래와 같이 작성해봤습니다.@Test @DisplayName("회원 불러와서 getFriends 할때, default_batch_fetch_size 설정 여부에 따른 쿼리 개수 확인") public void findOne() throws Exception { //given Member member = Member.builder() .name("userA") .build(); Friend friendA = Friend.builder() .name("friendA") .member(member) .build(); Friend friendB = Friend.builder() .name("friendB") .member(member) .build(); Friend friendC = Friend.builder() .name("friendC") .member(member) .build(); Friend friendD = Friend.builder() .name("friendD") .member(member) .build(); Friend friendE = Friend.builder() .name("friendE") .member(member) .build(); //when memberRepository.save(member); friendRepository.save(friendA); friendRepository.save(friendB); friendRepository.save(friendC); friendRepository.save(friendD); friendRepository.save(friendE); em.flush(); em.clear(); //then Member findMember = memberRepository.findById(member.getId()); List<Friend> friends = findMember.getFriends(); for (Friend friend : friends) { log.info("getClass: " + friend.getClass()); // 프록시객체를 기대.. log.info("getClass: " + friend.getName()); } }Member와 Friend는 일대다 관계이며,Member 클래스에 있는 연관관계 필드는 다음과 같고,@OneToMany(mappedBy = "member", cascade = CascadeType.ALL, orphanRemoval = true) private final List<Friend> friends = new ArrayList<>();Friend 클래스에 있는 연관관계 필드는 다음과 같습니다.@ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name="member_id") private Member member;테스트코드에서,,Member findMember = memberRepository.findById(member.getId()); 이 부분에서 member를 조회하는 쿼리가 한번,log.info("getClass: " + friend.getClass()); 이 부분에서 프록시객체가 찍히고,log.info("getClass: " + friend.getName()); 이 부분에서 원본 객체를 조회하기 위해 쿼리가 한번 나가서, for문을 돌면서 총 1 + 5 개의 쿼리가 나가기를 기대했습니다.그리고 default_batch_fetch_size:100 를 글로벌설정에 주게 되면 멤버 조회하는 쿼리 1번, 해당 멤버와 관련된 전체 friend 들을 다 조회하는 쿼리 1번이 나가고 더이상 안나가게 되지 않을까 기대했습니다.그런데, 글로벌설정을 주기도 전에 1+5개의 조회 쿼리가 나가지가 않고 2개의 조회쿼리만 나가고 끝이 나네요..default_batch_fetch_size:100 이 옵션을 주석처리도 해보고, 아예 지워도 보고 default_batch_fetch_size:1 로도 값을 변경해보기도 하였지만 결과는 같았습니다.로그는 다음과 같습니다.2023-06-09 21:35:26.695 INFO 1106 --- [ Test worker] o.s.t.c.transaction.TransactionContext : Began transaction (1) for test context [DefaultTestContext@1bdaa23d testClass = MemberRepositoryTest, testInstance = com.example.myvers.member.MemberRepositoryTest@7ae75ba6, testMethod = findOne@MemberRepositoryTest, testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@79f227a9 testClass = MemberRepositoryTest, locations = '{}', classes = '{class com.example.myvers.MyversApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@42f48531, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@ea9b7c6, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@a8e6492, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@60dce7ea, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@f73dcd6, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@43015c69], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true, 'org.springframework.test.context.event.ApplicationEventsTestExecutionListener.recordApplicationEvents' -> false]]; transaction manager [org.springframework.orm.jpa.JpaTransactionManager@7b6b466a]; rollback [true] 2023-06-09 21:35:26.749 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : call next value for hibernate_sequence 2023-06-09 21:35:26.749 INFO 1106 --- [ Test worker] p6spy : #1686314126749 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b call next value for hibernate_sequence call next value for hibernate_sequence; 2023-06-09 21:35:26.750 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : call next value for hibernate_sequence 2023-06-09 21:35:26.750 INFO 1106 --- [ Test worker] p6spy : #1686314126750 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b call next value for hibernate_sequence call next value for hibernate_sequence; 2023-06-09 21:35:26.750 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : call next value for hibernate_sequence 2023-06-09 21:35:26.750 INFO 1106 --- [ Test worker] p6spy : #1686314126750 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b call next value for hibernate_sequence call next value for hibernate_sequence; 2023-06-09 21:35:26.750 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : call next value for hibernate_sequence 2023-06-09 21:35:26.750 INFO 1106 --- [ Test worker] p6spy : #1686314126750 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b call next value for hibernate_sequence call next value for hibernate_sequence; 2023-06-09 21:35:26.750 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : call next value for hibernate_sequence 2023-06-09 21:35:26.750 INFO 1106 --- [ Test worker] p6spy : #1686314126750 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b call next value for hibernate_sequence call next value for hibernate_sequence; 2023-06-09 21:35:26.750 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : call next value for hibernate_sequence 2023-06-09 21:35:26.750 INFO 1106 --- [ Test worker] p6spy : #1686314126750 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b call next value for hibernate_sequence call next value for hibernate_sequence; 2023-06-09 21:35:26.751 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : insert into member (created_date, email, grade, login_id, name, password, talk_count, member_id) values (?, ?, ?, ?, ?, ?, ?, ?) 2023-06-09 21:35:26.752 INFO 1106 --- [ Test worker] p6spy : #1686314126752 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b insert into member (created_date, email, grade, login_id, name, password, talk_count, member_id) values (?, ?, ?, ?, ?, ?, ?, ?) insert into member (created_date, email, grade, login_id, name, password, talk_count, member_id) values (NULL, NULL, NULL, NULL, 'userA', NULL, 1, 33); 2023-06-09 21:35:26.752 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) 2023-06-09 21:35:26.752 INFO 1106 --- [ Test worker] p6spy : #1686314126752 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (0, NULL, NULL, NULL, NULL, 33, 'friendA', 34); 2023-06-09 21:35:26.752 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) 2023-06-09 21:35:26.752 INFO 1106 --- [ Test worker] p6spy : #1686314126752 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (0, NULL, NULL, NULL, NULL, 33, 'friendB', 35); 2023-06-09 21:35:26.753 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) 2023-06-09 21:35:26.753 INFO 1106 --- [ Test worker] p6spy : #1686314126753 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (0, NULL, NULL, NULL, NULL, 33, 'friendC', 36); 2023-06-09 21:35:26.753 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) 2023-06-09 21:35:26.753 INFO 1106 --- [ Test worker] p6spy : #1686314126753 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (0, NULL, NULL, NULL, NULL, 33, 'friendD', 37); 2023-06-09 21:35:26.753 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) 2023-06-09 21:35:26.753 INFO 1106 --- [ Test worker] p6spy : #1686314126753 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (?, ?, ?, ?, ?, ?, ?, ?) insert into friend (age, created_date, gender, image_name, mbti, member_id, name, friend_id) values (0, NULL, NULL, NULL, NULL, 33, 'friendE', 38); 2023-06-09 21:35:26.759 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : select member0_.member_id as member_i1_1_0_, member0_.created_date as created_2_1_0_, member0_.email as email3_1_0_, member0_.grade as grade4_1_0_, member0_.login_id as login_id5_1_0_, member0_.name as name6_1_0_, member0_.password as password7_1_0_, member0_.talk_count as talk_cou8_1_0_ from member member0_ where member0_.member_id=? 2023-06-09 21:35:26.760 INFO 1106 --- [ Test worker] p6spy : #1686314126760 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b select member0_.member_id as member_i1_1_0_, member0_.created_date as created_2_1_0_, member0_.email as email3_1_0_, member0_.grade as grade4_1_0_, member0_.login_id as login_id5_1_0_, member0_.name as name6_1_0_, member0_.password as password7_1_0_, member0_.talk_count as talk_cou8_1_0_ from member member0_ where member0_.member_id=? select member0_.member_id as member_i1_1_0_, member0_.created_date as created_2_1_0_, member0_.email as email3_1_0_, member0_.grade as grade4_1_0_, member0_.login_id as login_id5_1_0_, member0_.name as name6_1_0_, member0_.password as password7_1_0_, member0_.talk_count as talk_cou8_1_0_ from member member0_ where member0_.member_id=33; 2023-06-09 21:35:26.765 DEBUG 1106 --- [ Test worker] org.hibernate.SQL : select friends0_.member_id as member_i8_0_0_, friends0_.friend_id as friend_i1_0_0_, friends0_.friend_id as friend_i1_0_1_, friends0_.age as age2_0_1_, friends0_.created_date as created_3_0_1_, friends0_.gender as gender4_0_1_, friends0_.image_name as image_na5_0_1_, friends0_.mbti as mbti6_0_1_, friends0_.member_id as member_i8_0_1_, friends0_.name as name7_0_1_ from friend friends0_ where friends0_.member_id=? 2023-06-09 21:35:26.766 INFO 1106 --- [ Test worker] p6spy : #1686314126766 | took 0ms | statement | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b select friends0_.member_id as member_i8_0_0_, friends0_.friend_id as friend_i1_0_0_, friends0_.friend_id as friend_i1_0_1_, friends0_.age as age2_0_1_, friends0_.created_date as created_3_0_1_, friends0_.gender as gender4_0_1_, friends0_.image_name as image_na5_0_1_, friends0_.mbti as mbti6_0_1_, friends0_.member_id as member_i8_0_1_, friends0_.name as name7_0_1_ from friend friends0_ where friends0_.member_id=? select friends0_.member_id as member_i8_0_0_, friends0_.friend_id as friend_i1_0_0_, friends0_.friend_id as friend_i1_0_1_, friends0_.age as age2_0_1_, friends0_.created_date as created_3_0_1_, friends0_.gender as gender4_0_1_, friends0_.image_name as image_na5_0_1_, friends0_.mbti as mbti6_0_1_, friends0_.member_id as member_i8_0_1_, friends0_.name as name7_0_1_ from friend friends0_ where friends0_.member_id=33; 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: class com.example.myvers.domain.Friend 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: friendA 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: class com.example.myvers.domain.Friend 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: friendB 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: class com.example.myvers.domain.Friend 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: friendC 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: class com.example.myvers.domain.Friend 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: friendD 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: class com.example.myvers.domain.Friend 2023-06-09 21:35:26.768 INFO 1106 --- [ Test worker] c.e.myvers.member.MemberRepositoryTest : getClass: friendE 2023-06-09 21:35:26.771 INFO 1106 --- [ Test worker] p6spy : #1686314126771 | took 0ms | rollback | connection 16| url jdbc:h2:mem:bd08892f-1de8-4235-819c-08b14b2b1f5b ; 2023-06-09 21:35:26.772 INFO 1106 --- [ Test worker] o.s.t.c.transaction.TransactionContext : Rolled back transaction for test: [DefaultTestContext@1bdaa23d testClass = MemberRepositoryTest, testInstance = com.example.myvers.member.MemberRepositoryTest@7ae75ba6, testMethod = findOne@MemberRepositoryTest, testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@79f227a9 testClass = MemberRepositoryTest, locations = '{}', classes = '{class com.example.myvers.MyversApplication}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.autoconfigure.actuate.metrics.MetricsExportContextCustomizerFactory$DisableMetricExportContextCustomizer@42f48531, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@ea9b7c6, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@a8e6492, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@60dce7ea, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@f73dcd6, org.springframework.boot.test.context.SpringBootTestArgs@1, org.springframework.boot.test.context.SpringBootTestWebEnvironment@43015c69], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.populatedRequestContextHolder' -> true, 'org.springframework.test.context.web.ServletTestExecutionListener.resetRequestContextHolder' -> true, 'org.springframework.test.context.event.ApplicationEventsTestExecutionListener.recordApplicationEvents' -> false]] 결론: default_batch_fetch_size 설정을 지워도 지연로딩이 적용되지 않는 이유를 알고싶습니다. 감사합니다.