개요
이 페이지에서는 새 버전의 고 (Go) 운전자 로 업그레이드 때 애플리케이션 변경해야 하는 경우에 대해 설명합니다.
업그레이드하기 전에 다음 작업을 수행하세요:
새 고 (Go) 운전자 버전 애플리케이션 연결되는 MongoDB Server 버전 및 애플리케이션 실행되는 고 (Go) 버전과 호환되는지 확인하세요. 자세한 내용은 호환성 페이지를 참조하세요.
애플리케이션 에서 사용하는 운전자 버전과 업그레이드 예정 버전 간의 호환성이 손상되는 변경은 호환성이 손상되는 변경 섹션에서 확인하세요.
팁
향후 운전자 버전을 업그레이드할 때 애플리케이션 에 필요한 변경 사항의 수를 최소화하려면 Stable API 를 사용합니다.
호환성이 손상되는 변경
호환성이 손상되는 변경은 드라이버의 특정 버전에서 시작되는 규칙 또는 동작의 변경입니다. 이러한 유형의 변경으로 인해 드라이버를 업그레이드하기 전에 해결하지 않으면 애플리케이션이 제대로 작동하지 않을 수 있습니다.
이 섹션의 호환성이 손상되는 변경은 이를 도입한 드라이버 버전별로 분류됩니다. 드라이버 버전을 업그레이드할 때 현재 버전과 업그레이드 버전 간의 호환성이 손상되는 변경을 모두 해소합니다.
버전 2.2 호환성이 손상되는 변경
MongoDB Server v3.6에 대한 지원 중단합니다. 지원되는 최소 MongoDB Server 버전은 이제 v4.0입니다. 이로 인해
MONGODB-CR
인증 메커니즘 에 대한 지원 도 중단됩니다. MongoDB Server 버전과의 호환성에 대해 자세히 학습하려면 호환성 참조를 확인하세요.
버전 2.0 호환성이 손상되는 변경
mongo.Connect()
Context 매개변수를 허용하지 않습니다. 이 메서드는 옵션 객체 만 허용합니다. 이 메서드를 사용하는 예시를 보려면 연결 가이드의 연결 예제 코드 를 참조하세요.Cursor.SetMaxTime()
메서드의 이름이Cursor.SetMaxAwaitTime()
(으)로 변경되었습니다. 이 메서드는 테일 커서 (tailable cursor) 가 있는 고정 사이즈 컬렉션 에서 검색된 새 문서를 서버 기다리는 최대 시간을 지정합니다.작업별 시간 초과 옵션 제거. 다음 필드와 setter 메서드가 운전자 에서 제거되었습니다.
AggregateOptions.MaxTime
,AggregateOptions.SetMaxTime()
ClientOptions.SocketTimeout
,ClientOptions.SetSocketTimeout()
CountOptions.MaxTime
,CountOptions.SetMaxTime()
DistinctOptions.MaxTime
,DistinctOptions.SetMaxTime()
EstimatedDocumentCountOptions.MaxTime
,EstimatedDocumentCountOptions.SetMaxTime()
FindOptions.MaxTime
,FindOptions.SetMaxTime()
FindOneOptions.MaxTime
,FindOneOptions.SetMaxTime()
FindOneAndReplaceOptions.MaxTime
,FindOneAndReplaceOptions.SetMaxTime()
FindOneAndUpdateOptions.MaxTime
,FindOneAndUpdateOptions.SetMaxTime()
GridFSFindOptions.MaxTime
,GridFSFindOptions.SetMaxTime()
CreateIndexesOptions.MaxTime
,CreateIndexesOptions.SetMaxTime()
DropIndexesOptions.MaxTime
,DropIndexesOptions.SetMaxTime()
ListIndexesOptions.MaxTime
,ListIndexesOptions.SetMaxTime()
SessionOptions.DefaultMaxCommitTime
,SessionOptions.SetDefaultMaxCommitTime()
TransactionOptions.MaxCommitTime
,TransactionOptions.SetMaxCommitTime()
WriteConcern.WTimeout
대신 클라이언트 또는 컨텍스트 내에서 시간 초과를 설정하다 수 있습니다. 서버 실행 시간 제한 가이드 에서 자세히 보기.
bson/primitive
패키지 를 제거합니다. 이제 이 패키지bson
패키지 와 병합됩니다. 코드를 업데이트 하려면bson/primitive
가져오기 문을 모두 제거 하고primitive.ObjectID
의 인스턴스bson.ObjectId
로 변경합니다.