Compartilhar via


Método ICrmCompensator::P repareRecord (comsvcs.h)

Fornece um registro de log em ordem subsequente durante a fase de preparação. Esse método pode ser recebido pelo CrM Compensator várias vezes, uma vez para cada registro de log gravado.

Sintaxe

HRESULT PrepareRecord(
  [in]  CrmLogRecordRead crmLogRec,
  [out] BOOL             *pfForget
);

Parâmetros

[in] crmLogRec

O registro de log, como uma estrutura CrmLogRecordRead .

[out] pfForget

Indica se o registro entregue deve ser esquecido.

Retornar valor

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Os registros de log não estruturados são entregues como uma estrutura CrmLogRecordRead . Além dos dados do usuário (como um único BLOB), essa estrutura contém alguns campos adicionais que podem ser úteis para depuração ou descoberta de falhas se a compensação humana for necessária. O membro dwCrmFlags é um campo bit que fornece mais informações sobre se esse registro foi esquecido em algum momento e quando foi gravado. O membro dwSequenceNumber fornece o número de sequência do registro de log. Na maioria dos casos, os números de sequência são sequenciais, mas não são necessariamente contíguos devido a registros de log internos que não são entregues ao CrM Compensator.

Se nenhum registro de log for gravado pelo CRM Worker, os métodos BeginPrepare e EndPrepare serão recebidos, mas não haverá chamadas de método PrepareRecord . Isso é para permitir que os compensadores de CRM que gravam registros de log somente no tempo de preparação.

O Compensador crm pode optar por esquecer o registro que é entregue a ele durante essa fase definindo o sinalizador forget no retorno desse método.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho comsvcs.h

Confira também

ICrmCompensator