IRecordSequence.WriteRestartArea 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
파생 클래스에서 재정의되는 경우 다시 시작 영역을 IRecordSequence씁니다.
오버로드
WriteRestartArea(ArraySegment<Byte>) |
파생 클래스에서 재정의되는 경우 다시 시작 영역을 IRecordSequence씁니다. |
WriteRestartArea(IList<ArraySegment<Byte>>) |
파생 클래스에서 재정의되는 경우 다시 시작 영역을 IRecordSequence씁니다. |
WriteRestartArea(ArraySegment<Byte>, SequenceNumber) |
파생 클래스에서 재정의된 경우 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다. |
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber) |
파생 클래스에서 재정의된 경우 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다. |
WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection) |
파생 클래스에서 재정의된 경우 예약을 사용하여 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다. |
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection) |
파생 클래스에서 재정의된 경우 예약을 사용하여 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다. |
설명
다시 시작 영역은 클라이언트의 마지막 검사점 작업이 포함된 정보를 일시적으로 저장하는 데 사용됩니다. 복구가 필요한 경우 다시 시작 영역을 구문 분석하여 마지막 검사점 작업에서 모든 데이터를 검색할 수 있습니다. 이 데이터는 트랜잭션 테이블, 더티 페이지 테이블 및 열린 파일 테이블을 초기화하여 복구 프로세스에서 사용할 수 있도록 합니다. ReadRestartAreas 메서드를 사용하여 다시 시작 영역을 읽을 수 있습니다.
WriteRestartArea(ArraySegment<Byte>)
파생 클래스에서 재정의되는 경우 다시 시작 영역을 IRecordSequence씁니다.
public:
System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data);
public System.IO.Log.SequenceNumber WriteRestartArea (ArraySegment<byte> data);
abstract member WriteRestartArea : ArraySegment<byte> -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte)) As SequenceNumber
매개 변수
- data
- ArraySegment<Byte>
레코드로 연결되고 추가될 바이트 배열 세그먼트 목록입니다.
반환
기록된 다시 시작 영역의 시퀀스 번호입니다.
예외
하나 이상의 인수가 잘못되었습니다.
다시 시작 영역을 작성하는 동안 I/O 오류가 발생했습니다.
레코드 시퀀스가 새 다시 시작 영역을 포함하기에 충분한 여유 공간을 만들 수 없습니다.
시퀀스가 삭제된 후 메서드가 호출되었습니다.
설명
다시 시작 영역은 클라이언트의 마지막 검사점 작업이 포함된 정보를 일시적으로 저장하는 데 사용됩니다. CLFS(공용 로그 파일 시스템)는 두 개의 다시 시작 영역을 유지 관리하여 하나 이상의 유효한 영역을 항상 사용할 수 있도록 보장합니다. 복구가 필요한 경우 CLFS는 다시 시작 영역과 마지막 검사점 작업의 모든 데이터를 읽습니다. 이 데이터는 트랜잭션 테이블, 더티 페이지 테이블 및 열린 파일 테이블을 초기화하여 복구 프로세스에서 사용할 수 있도록 합니다.
ReadRestartAreas 메서드를 사용하여 다시 시작 영역을 읽을 수 있습니다.
바이트 배열 세그먼트의 데이터는 레코드로 추가하기 위해 단일 바이트 배열로 연결됩니다. 다시 시작 영역을 읽을 때 데이터를 배열 세그먼트로 다시 분할하기 위한 프로비저닝이 이루어지지 않습니다.
적용 대상
WriteRestartArea(IList<ArraySegment<Byte>>)
파생 클래스에서 재정의되는 경우 다시 시작 영역을 IRecordSequence씁니다.
public:
System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data);
public System.IO.Log.SequenceNumber WriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data);
abstract member WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As IList(Of ArraySegment(Of Byte))) As SequenceNumber
매개 변수
- data
- IList<ArraySegment<Byte>>
레코드로 연결되고 추가될 바이트 배열 세그먼트 목록입니다.
반환
기록된 다시 시작 영역의 시퀀스 번호입니다.
예외
하나 이상의 인수가 잘못되었습니다.
다시 시작 영역을 작성하는 동안 I/O 오류가 발생했습니다.
레코드 시퀀스가 새 다시 시작 영역을 포함하기에 충분한 여유 공간을 만들 수 없습니다.
시퀀스가 삭제된 후 메서드가 호출되었습니다.
설명
다시 시작 영역은 클라이언트의 마지막 검사점 작업이 포함된 정보를 일시적으로 저장하는 데 사용됩니다. 복구가 필요한 경우 다시 시작 영역을 구문 분석하여 마지막 검사점 작업에서 모든 데이터를 검색할 수 있습니다. 이 데이터는 트랜잭션 테이블, 더티 페이지 테이블 및 열린 파일 테이블을 초기화하여 복구 프로세스에서 사용할 수 있도록 합니다. ReadRestartAreas 메서드를 사용하여 다시 시작 영역을 읽을 수 있습니다.
바이트 배열 세그먼트의 데이터는 레코드로 추가하기 위해 단일 바이트 배열로 연결됩니다. 다시 시작 영역을 읽을 때 데이터를 배열 세그먼트로 다시 분할하기 위한 프로비저닝이 이루어지지 않습니다.
적용 대상
WriteRestartArea(ArraySegment<Byte>, SequenceNumber)
파생 클래스에서 재정의된 경우 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다.
public:
System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSequenceNumber);
public System.IO.Log.SequenceNumber WriteRestartArea (ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSequenceNumber);
abstract member WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte), newBaseSequenceNumber As SequenceNumber) As SequenceNumber
매개 변수
- data
- ArraySegment<Byte>
레코드로 연결되고 추가될 바이트 배열 세그먼트 목록입니다.
- newBaseSequenceNumber
- SequenceNumber
새 기본 시퀀스 번호입니다. 지정된 시퀀스 번호는 현재 기본 시퀀스 번호보다 크거나 같아야 합니다.
반환
기록된 다시 시작 영역의 시퀀스 번호입니다.
예외
하나 이상의 인수가 잘못되었습니다.
다시 시작 영역을 작성하는 동안 I/O 오류가 발생했습니다.
레코드 시퀀스가 새 다시 시작 영역을 포함하기에 충분한 여유 공간을 만들 수 없습니다.
시퀀스가 삭제된 후 메서드가 호출되었습니다.
설명
다시 시작 영역은 클라이언트의 마지막 검사점 작업이 포함된 정보를 일시적으로 저장하는 데 사용됩니다. 복구가 필요한 경우 다시 시작 영역을 구문 분석하여 마지막 검사점 작업에서 모든 데이터를 검색할 수 있습니다. 이 데이터는 트랜잭션 테이블, 더티 페이지 테이블 및 열린 파일 테이블을 초기화하여 복구 프로세스에서 사용할 수 있도록 합니다. ReadRestartAreas 메서드를 사용하여 다시 시작 영역을 읽을 수 있습니다.
다시 시작 영역을 작성하면 바이트 배열 세그먼트의 데이터가 레코드로 추가하기 위해 단일 바이트 배열로 연결됩니다. 다시 시작 영역을 읽을 때 데이터를 배열 세그먼트로 다시 분할하기 위한 프로비저닝이 이루어지지 않습니다.
이 메서드가 성공적으로 완료되면 기본 시퀀스 번호가 업데이트됩니다. 시퀀스 번호가 새 기본 시퀀스 번호보다 작은 모든 로그 레코드에 액세스할 수 없습니다.
적용 대상
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber)
파생 클래스에서 재정의된 경우 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다.
public:
System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSequenceNumber);
public System.IO.Log.SequenceNumber WriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSequenceNumber);
abstract member WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As IList(Of ArraySegment(Of Byte)), newBaseSequenceNumber As SequenceNumber) As SequenceNumber
매개 변수
- data
- IList<ArraySegment<Byte>>
레코드로 연결되고 추가될 바이트 배열 세그먼트 목록입니다.
- newBaseSequenceNumber
- SequenceNumber
새 기본 시퀀스 번호입니다. 지정된 시퀀스 번호는 현재 기본 시퀀스 번호보다 크거나 같아야 합니다.
반환
기록된 다시 시작 영역의 시퀀스 번호입니다.
예외
하나 이상의 인수가 잘못되었습니다.
다시 시작 영역을 작성하는 동안 I/O 오류가 발생했습니다.
레코드 시퀀스가 새 다시 시작 영역을 포함하기에 충분한 여유 공간을 만들 수 없습니다.
시퀀스가 삭제된 후 메서드가 호출되었습니다.
설명
다시 시작 영역은 클라이언트의 마지막 검사점 작업이 포함된 정보를 일시적으로 저장하는 데 사용됩니다. 복구가 필요한 경우 다시 시작 영역을 구문 분석하여 마지막 검사점 작업에서 모든 데이터를 검색할 수 있습니다. 이 데이터는 트랜잭션 테이블, 더티 페이지 테이블 및 열린 파일 테이블을 초기화하여 복구 프로세스에서 사용할 수 있도록 합니다. ReadRestartAreas 메서드를 사용하여 다시 시작 영역을 읽을 수 있습니다.
다시 시작 영역을 작성하면 바이트 배열 세그먼트의 데이터가 레코드로 추가하기 위해 단일 바이트 배열로 연결됩니다. 다시 시작 영역을 읽을 때 데이터를 배열 세그먼트로 다시 분할하기 위한 프로비저닝이 이루어지지 않습니다.
이 메서드가 성공적으로 완료되면 기본 시퀀스 번호가 업데이트됩니다. 시퀀스 번호가 새 기본 시퀀스 번호보다 작은 모든 로그 레코드에 액세스할 수 없습니다.
적용 대상
WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection)
파생 클래스에서 재정의된 경우 예약을 사용하여 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다.
public:
System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation);
public System.IO.Log.SequenceNumber WriteRestartArea (ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation);
abstract member WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte), newBaseSequenceNumber As SequenceNumber, reservation As ReservationCollection) As SequenceNumber
매개 변수
- data
- ArraySegment<Byte>
레코드로 연결되고 추가될 바이트 배열 세그먼트 목록입니다.
- newBaseSequenceNumber
- SequenceNumber
새 기본 시퀀스 번호입니다. 지정된 시퀀스 번호는 현재 기본 시퀀스 번호보다 크거나 같아야 합니다.
- reservation
- ReservationCollection
이 다시 시작 영역에 사용해야 하는 예약이 포함된 ReservationCollection.
반환
기록된 다시 시작 영역의 시퀀스 번호입니다.
예외
하나 이상의 인수가 잘못되었습니다.
다시 시작 영역을 작성하는 동안 I/O 오류가 발생했습니다.
레코드 시퀀스가 새 다시 시작 영역을 포함하기에 충분한 여유 공간을 만들 수 없습니다.
시퀀스가 삭제된 후 메서드가 호출되었습니다.
설명
다시 시작 영역은 클라이언트의 마지막 검사점 작업이 포함된 정보를 일시적으로 저장하는 데 사용됩니다. 복구가 필요한 경우 다시 시작 영역을 구문 분석하여 마지막 검사점 작업에서 모든 데이터를 검색할 수 있습니다. 이 데이터는 트랜잭션 테이블, 더티 페이지 테이블 및 열린 파일 테이블을 초기화하여 복구 프로세스에서 사용할 수 있도록 합니다. ReadRestartAreas 메서드를 사용하여 다시 시작 영역을 읽을 수 있습니다.
다시 시작 영역을 작성하면 바이트 배열 세그먼트의 데이터가 레코드로 추가하기 위해 단일 바이트 배열로 연결됩니다. 다시 시작 영역을 읽을 때 데이터를 배열 세그먼트로 다시 분할하기 위한 프로비저닝이 이루어지지 않습니다.
예약이 지정된 경우 기록된 다시 시작 영역은 컬렉션에 포함된 예약을 사용하여 이전에 예약된 공간을 사용합니다. 메서드가 성공하면 데이터를 포함할 수 있는 가장 작은 예약을 사용하고 해당 예약은 컬렉션에서 제거됩니다.
이 메서드가 성공적으로 완료되면 기본 시퀀스 번호가 업데이트됩니다. 시퀀스 번호가 새 기본 시퀀스 번호보다 작은 모든 로그 레코드에 액세스할 수 없습니다.
레코드 시퀀스가 삭제되었거나 잘못된 인수를 전달하는 경우 이 작업 내에서 즉시 예외가 throw됩니다. 비동기 추가 요청 중에 발생한 오류(예: I/O 요청 중 디스크 오류)는 EndReserveAndAppend 메서드가 호출될 때 예외가 throw됩니다.
적용 대상
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection)
파생 클래스에서 재정의된 경우 예약을 사용하여 다시 시작 영역을 IRecordSequence 쓰고 기본 시퀀스 번호를 업데이트합니다.
public:
System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation);
public System.IO.Log.SequenceNumber WriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation);
abstract member WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As IList(Of ArraySegment(Of Byte)), newBaseSequenceNumber As SequenceNumber, reservation As ReservationCollection) As SequenceNumber
매개 변수
- data
- IList<ArraySegment<Byte>>
레코드로 연결되고 추가될 바이트 배열 세그먼트 목록입니다.
- newBaseSequenceNumber
- SequenceNumber
새 기본 시퀀스 번호입니다. 지정된 시퀀스 번호는 현재 기본 시퀀스 번호보다 크거나 같아야 합니다.
- reservation
- ReservationCollection
이 다시 시작 영역에 사용해야 하는 예약이 포함된 ReservationCollection.
반환
기록된 다시 시작 영역의 시퀀스 번호입니다.
예외
하나 이상의 인수가 잘못되었습니다.
다시 시작 영역을 작성하는 동안 I/O 오류가 발생했습니다.
레코드 시퀀스가 새 다시 시작 영역을 포함하기에 충분한 여유 공간을 만들 수 없습니다.
시퀀스가 삭제된 후 메서드가 호출되었습니다.
설명
다시 시작 영역은 클라이언트의 마지막 검사점 작업이 포함된 정보를 일시적으로 저장하는 데 사용됩니다. 복구가 필요한 경우 다시 시작 영역을 구문 분석하여 마지막 검사점 작업에서 모든 데이터를 검색할 수 있습니다. 이 데이터는 트랜잭션 테이블, 더티 페이지 테이블 및 열린 파일 테이블을 초기화하여 복구 프로세스에서 사용할 수 있도록 합니다. ReadRestartAreas 메서드를 사용하여 다시 시작 영역을 읽을 수 있습니다.
다시 시작 영역을 작성하면 바이트 배열 세그먼트의 데이터가 레코드로 추가하기 위해 단일 바이트 배열로 연결됩니다. 다시 시작 영역을 읽을 때 데이터를 배열 세그먼트로 다시 분할하기 위한 프로비저닝이 이루어지지 않습니다.
예약이 지정된 경우 기록된 다시 시작 영역은 컬렉션에 포함된 예약을 사용하여 이전에 예약된 공간을 사용합니다. 메서드가 성공하면 데이터를 포함할 수 있는 가장 작은 예약을 사용하고 해당 예약은 컬렉션에서 제거됩니다.
이 메서드가 성공적으로 완료되면 기본 시퀀스 번호가 업데이트됩니다. 시퀀스 번호가 새 기본 시퀀스 번호보다 작은 모든 로그 레코드에 액세스할 수 없습니다.
레코드 시퀀스가 삭제되었거나 잘못된 인수를 전달하는 경우 이 작업 내에서 즉시 예외가 throw됩니다. 비동기 추가 요청 중에 발생한 오류(예: I/O 요청 중 디스크 오류)는 EndReserveAndAppend 메서드가 호출될 때 예외가 throw됩니다.
적용 대상
.NET