Функция JetTruncateLogInstance

Применимо к: Windows | Windows Server

Функция JetTruncateLogInstance

Функция JetTruncateLogInstance используется во время резервного копирования, инициированного JetBeginExternalBackup , чтобы удалить все файлы журнала транзакций, которые больше не понадобятся после успешного завершения текущего резервного копирования.

Windows XP:JetTruncateLogInstance представлен в Windows XP.

    JET_ERR JET_API JetTruncateLogInstance(
      __in          JET_INSTANCE instance
    );

Параметры

Экземпляр

Экземпляр, используемый для этого вызова.

Для Windows 2000 вариант API, который принимает этот параметр, недоступен, так как поддерживается только один экземпляр. В данном случае подразумевается использование этого одного глобального экземпляра.

Для Windows XP и более поздних версий вариант API, который не принимает этот параметр, можно вызывать только в том случае, если подсистема находится в устаревшем режиме (режим совместимости Windows 2000), где поддерживается только один экземпляр. В противном случае операция завершится сбоем с JET_errRunningInMultiInstanceMode.

Возвращаемое значение

Эта функция возвращает тип данных JET_ERR с одним из следующих кодов возврата. Дополнительные сведения о возможных ошибках ESE см. в разделах Ошибки подсистемы расширяемого хранилища и Параметры обработки ошибок.

Код возврата

Описание

JET_errSuccess

Операция выполнена успешно.

JET_errBackupAbortByServer

Windows Server 2003: Это возвращаемое значение появилось в Windows Server 2003.

Операция завершилась сбоем, так как текущая внешняя резервная копия была прервана вызовом JetStopBackup.

JET_errClientRequestToStopJetService

Операция не может завершиться, так как все действия на экземпляре, связанном с сеансом, прекратились в результате вызова JetStopService.

JET_errInstanceUnavailable

Операция не может завершиться, так как экземпляр, связанный с сеансом, столкнулся с неустранимой ошибкой, требующей отмены доступа ко всем данным для защиты целостности этих данных. Эта ошибка будет возвращена только в Windows XP и более поздних выпусках.

JET_errInvalidBackupSequence

Операция резервного копирования завершилась сбоем, так как она была вызвана из последовательности. JetTruncateLog вернет эту ошибку, если для экземпляра есть какие-либо необработанные дескрипторы файлов, созданные с помощью JetOpenFile .

JET_errInvalidParameter

Один из предоставленных параметров содержал непредвиденное значение или сочетание нескольких параметров привело к непредвиденному результату. Это может произойти для JetTruncateLog , если указанный дескриптор экземпляра недопустим.

JET_errNoBackup

Операция завершилась сбоем, так как внешнее резервное копирование не выполняется.

JET_errNotInitialized

Операция не может завершиться, так как экземпляр, связанный с сеансом, еще не инициализирован.

JET_errRestoreInProgress

Операция не может завершиться, так как выполняется операция восстановления на экземпляре, связанном с сеансом.

JET_errRunningInMultiInstanceMode

Операция завершилась сбоем, так как была предпринята попытка использовать подсистему в устаревшем режиме (режим совместимости с Windows 2000), где поддерживается только один экземпляр, если на самом деле уже существует несколько экземпляров.

JET_errTermInProgress

Операция не может завершиться, так как экземпляр, связанный с сеансом, завершает работу.

При успешном выполнении этой функции набор файлов журнала транзакций, которые больше не понадобятся после успешного завершения текущего резервного копирования, удаляются. Конечный автомат резервного копирования будет расширен таким образом, что резервное копирование файлов базы данных больше не разрешено. После этого можно открывать для резервного копирования только файлы исправлений базы данных и файлы журнала транзакций.

Если эта функция завершается сбоем, конечный автомат резервного копирования может быть расширен таким образом, что резервное копирование файлов базы данных больше не разрешено. Может быть удалено некоторое количество файлов журнала транзакций, которое меньше требуемого числа, но они всегда будут удалены из самых старых в самые молодые.

Требования

Требование Значение

Клиент

Требуется Windows Vista или Windows XP.

Сервер

Требуется Windows Server 2008 или Windows Server 2003.

Верхняя часть

Объявлено в Esent.h.

Библиотека

Используйте ESENT.lib.

DLL

Требуется ESENT.dll.

См. также:

Файлы расширяемого ядра хранилища
JET_ERR
JET_INSTANCE
JetBeginExternalBackup
JetOpenFile
JetStopBackup
JetStopService