☁️ oauth ID range 문제 - boostcampwm-2024/web17-juchumjuchum GitHub Wiki
분야 | 작성자 | 작성일 |
---|---|---|
BE | 김민수 | 24년 11월 11일 |
oauth ID range 문제
어떤 문제인가요?
이번에 oauth 자동 회원가입을 구현을 하고 직접 테스트를 했을 때 아래와 같이 oauth_id
가 주어진 범위를 초과하는 에러가 발생했다.
해당 문제가 왜 발생했나요?
oauth 자원 서버로부터 가져온 id의 값이 oauth_id로 주어졌는데 전달 받은 id가 int로 설정된 DB의 칼럼이 받을 수 있는 범위를 초과한 것이 원인이었다. (심지어 bigint도 초과하는 범위였다)
문제를 어떻게 해결했나요?
해당 칼럼을 길이가 30인 decimal로 설정하여 문제를 해결했다. varchar로 사용하는 방법도 있지만, decimal이 크기가 작기 때문에 인덱스 조회 성능이 더 좋을 것이라고 판단했다. 이때 typeORM은 decimal 칼럼이 지원이 되므로 아래와 같이 칼럼을 설정하여 문제를 해결했다.
@Column('decimal', { name: 'oauth_id' })
oauthId: string;