Skip to content

2022 12 01

Seyeon Ko edited this page Dec 15, 2022 · 1 revision

오늘 상태는 어떠신가요

세연: 잠이 필요해 9시 59분에 알람 듣고 일어남

정욱: 어떻게 벌써 목요일이죠..

종찬: 늦잠잠

트랜잭션 버그

MongoServerError: WriteConflict error: this operation conflicted with another operation. Please retry your operation or multi-document transaction.
[0]     at Connection.onMessage (C:\Users\socer\Documents\부스트캠프\그룹프로젝트\server\node_modules\mongodb\lib\cmap\connection.js:207:30)
[0]     at MessageStream.<anonymous> (C:\Users\socer\Documents\부스트캠프\그룹프로젝트\server\node_modules\mongodb\lib\cmap\connection.js:60:60)
[0]     at MessageStream.emit (node:events:513:28)
[0]     at processIncomingData (C:\Users\socer\Documents\부스트캠프\그룹프로젝트\server\node_modules\mongodb\lib\cmap\message_stream.js:132:20)
[0]     at MessageStream._write (C:\Users\socer\Documents\부스트캠프\그룹프로젝트\server\node_modules\mongodb\lib\cmap\message_stream.js:33:9)
[0]     at writeOrBuffer (node:internal/streams/writable:392:12)
[0]     at _write (node:internal/streams/writable:333:10)
[0]     at Writable.write (node:internal/streams/writable:337:10)
[0]     at TLSSocket.ondata (node:internal/streams/readable:766:22)
[0]     at TLSSocket.emit (node:events:513:28) {
[0]   ok: 0,
[0]   code: 112,
[0]   codeName: 'WriteConflict',
[0]   '$clusterTime': {
[0]     clusterTime: new Timestamp({ t: 1669856646, i: 39 }),
[0]     signature: {
[0]       hash: new Binary(Buffer.from("5ee6240d33f09334a9fab6789616ac3f08264acd", "hex"), 0),
[0]       keyId: new Long("7123971350892380162")
[0]     }
[0]   },
[0]   operationTime: new Timestamp({ t: 1669856646, i: 39 }),
[0]   [Symbol(errorLabels)]: Set(1) { 'TransientTransactionError' }
[0] }
[0] file:///C:/Users/socer/Documents/%EB%B6%80%EC%8A%A4%ED%8A%B8%EC%BA%A0%ED%94%84/%EA%B7%B8%EB%A3%B9%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8/server/service/galleryService.js:83
[0]       throw new InternalServerError("DB 저장 실패");

???

원인은 React.StrictMode의 2번씩 이펙트 호출되어서 axios 요청이 2번 동시에 일어나는 것으로 밝혀져

해결 방법 참고

[React 18 strict mode에서 double mount로 인한 axios 중복 호출 막기 두번째 방법! (with AbortController)](https://velog.io/@sonaky47/React-18-strict-mode%EC%97%90%EC%84%9C-double-mount%EB%A1%9C-%EC%9D%B8%ED%95%9C-axios-%EC%A4%91%EB%B3%B5-%ED%98%B8%EC%B6%9C-%EB%A7%89%EA%B8%B0-%EB%91%90%EB%B2%88%EC%A7%B8-%EB%B0%A9%EB%B2%95-AbortController)

어제 뭐하셨나요

종찬

  • 표지판 만들기
  • 서버 코드 리팩토링

기종

  • 라우팅

세연

  • 링크 공유 기능 추가
  • 메인페이지의 유령 캐릭터 모델링 및 이동 페어프로그래밍하기

정욱

  • 조회수 기능 추가
  • 세연님과 메인 페이지 페어프로그래밍

오늘 할거?

기종

  • 잡다한 트러블슈팅
    • suspender 2번호출문제 (그래도 해결은 하고싶다)
    • 서버가 정적파일위치를 바라보고 있는데 그거 해결하고 싶다
    • 스타일 버그수정
    • 조회수 부분에서 뻑이가도 데이터는 불러와지게 수정

세연

  • 메인 페이지 캐릭터 이동 및 회전 페어프로그래밍~

정욱

  • 메인 페이지 페어프로그래밍

종찬

  • 크론탭으로 데이터 주기적으로 삭제
  • 랜덤하게 페이지네이션 불러오기
스프린트 계획 회의
🕖 데일리 회의
week1
week2
week3
week4
week5
week6
📔 팀 회고
🗓 개인 회고
🏝️Ground Rule
⚙️ Tech Spec
Clone this wiki locally