본문 바로가기
반응형

prisma4

[Prisma] Promise.all과 transaction 동시 사용 시 Transaction API error: Unable to start a transaction in the given time. 에러 발생. 외주 작업을 하면서 추가 의뢰를 받은 기능을 개발하던 중이였다. 해당 기능은 주문이 들어온지 두 달이 지났는데 아직 연결이 안된 접수 건을 조회 해서 취소된 항목 변경해달라는 것. 나는 cron으로 이미 스케줄링 작업을 돌리고 있었기 때문에 cron을 사용하기로 했고 매일 정해진 시간에 조회를 해 업데이트를 하면 된다고 생각했다. 또 이미 주문 취소 함수가 구현이 되어 있었기 때문에 해당 함수를 사용하면 된다고 생각했다. 그리고 문제의 그 코드...  @Cron('0 50 23 * * * ', { timeZone: 'Asia/Seoul' }) async deleteOldOrder() { //예전 데이터 삭제 // 기준 날짜: 현재 날짜에서 2개월 전 const .. 2024. 12. 8.
[Prisma] EC2에서 Property does not exist on type 배포 실패 진행하던 express 프로젝트에서 기능을 추가해 깃허브에 커밋을 하고 ec2에 pull을 받아 다시 build 해서 pm2로 배포하려 하였다. 그랬더니 새로 추가된 부분에서 대량으로 에러가 발생했다. 내충 보자면 Schema Property가 없다는 에러가 발생했다. 해당 에러는 로컬에서 실행할 때에는 발생되지 않는 에러였기 때문에 구글링을 해봤는데 'vscode를 다시 실행해라' 뭐 그런 답변들 밖에 없었다. 결국엔 답을 찾아낼 수 있었는데 npm install 시 prisma가 schema.prisma의 스키마 중 일부를 읽지 못해 정상적으로 property가 세팅되지 않은 상태라고 한다. 따라서 npx prisma generate를 실행시켜 prisma-client를 생성하도록 수정하였다. 이렇게.. 2024. 3. 15.
[Prisma] All elements of the array need to be Prisma Client promises. transaction 에러 해결 거창한건 아니고 내가 보려 만드는 에러 해결법... 기존에 디비 커넥션을 걷어내고 prisma로 마이그레이션 하고 있는 와중에 트랜잭션 처리를 해야되는 상황에 처했다. try,catch,finally로 다 컨트롤 해줘야되던 기존 방식과는 달리 $transaction 함수 하나만 쓰면 되길래 참 편하구나 하고 기존 쿼리를 배열에 넣고 해당 배열을 $transaction 함수에 파라미터로 넘겨주었다. 그랬더니 에러가 났다. 한참 공식문서 뒤적거리다보니 문제를 발견했는데 이렇게 prisma 객체 안에 넣어서 배열에 넣어야 됐는데 나는 그냥 쿼리 문자열을 배열로 넣어서 안됐던 것이였다. 조금만 생각해도 바로 알텐데 참으로 바보 같이 행동해 얻은 에러였다... 2023. 10. 30.
[Prisma] NextJS Prisma Error: EPERM: operation not permitted, unlink 'node_modules\.prisma\client\query_engine-windows.dll.node' 해결 어렵게 어렵게 기존 디비 연결을 걷어내고 prisma로 대체하고 있다. 간단한 model들로 실험해 성공한 뒤에 전체 디비 테이블들을 model로 작성하고 npx prisma generate 명령어를 치니... 이러한 에러가 떴다. 캐시도 지워보고 node_modules도 지우고 버전도 최신걸로 다시 설치해보고 했는데도 안됐는데 한 깃헙 이슈에서 해결 책을 찾을 수 있었다. https://github.com/prisma/prisma/issues/9184 EPERM: operation not permitted, unlink '...node_modules\prisma\query_engine-windows.dll.node' · Issue #9184 · prisma/prisma Bug description Fo.. 2023. 10. 27.
반응형