서버 구성: ADR 클리너 재시도 시간 제한(분)
적용 대상:SQL Server
SQL Server 2019(15.x)부터 이 구성 설정은 ADR(가속 데이터베이스 복구)에 사용됩니다. 클리너는 주기적으로 작동하여 필요하지 않은 행 버전을 정리하는 역할을 하는 비동기 프로세스입니다.
경우에 따라 청소기는 스윕 중에 사용자 워크로드와의 잠금 충돌로 인해 개체 또는 파티션 수준 IX
잠금을 획득하는 동안 문제가 발생할 수 있습니다. 클리너는 별도의 목록에서 이러한 페이지를 추적합니다.
ADR cleaner retry timeout (min)
청소기가 스윕을 포기하기 전에 IX
잠금 획득 및 정리를 독점적으로 재시도하는 시간을 제어합니다. 중단된 트랜잭션 맵에서 중단된 트랜잭션의 증가를 억제하려면 100개의% 성공으로 스윕을 완료하는 것이 필수적입니다. 별도의 목록의 페이지를 지정된 시간 제한 시간에 정리할 수 없는 경우 현재 스윕이 중단되고 다음 스윕 중에 정리가 시도됩니다.
버전 | Default value |
---|---|
SQL Server 2019 (15.x) | 120 |
SQL Server 2022(16.x) 이상 버전 | 15 |
설명
클리너는 SQL Server 2019(15.x)의 단일 스레드입니다. SQL Server 2022(16.x)에서 클리너는 기본적으로 단일 스레드이지만 ADR Cleaner Thread Count
서버 구성을 구성하여 다중 스레드로 만들 수 있습니다.
클리너가 단일 스레드인 경우 한 번에 하나의 데이터베이스에서만 작동할 수 있습니다. 인스턴스에 ADR을 사용하는 데이터베이스가 두 개 이상 있는 경우 시간 초과를 큰 값으로 늘리지 마세요. 그럴 경우 다른 데이터베이스에서 다시 시도하는 동안, 특정 데이터베이스에서 정리 작업이 지연될 수 있습니다.
알려진 문제
SQL Server 2019(15.x) CU 12 및 이전 버전의 경우, 이 값을 0
으로 설정할 수 있습니다. 이 문서의 예를 사용하여 설계된 기본값인 값 120
으로 수동으로 초기화하는 것이 좋습니다.
예시
다음은 클리너 재시도 제한 시간을 기본값으로 설정하는 예제입니다.
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
EXEC sp_configure 'ADR cleaner retry timeout', 120;
RECONFIGURE;
GO
예시
다음은 클리너 재시도 제한 시간을 기본값으로 설정하는 예제입니다.
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
EXEC sp_configure 'ADR cleaner retry timeout', 15;
RECONFIGURE;
GO