Last modified: January 09, 2012
Applies to: Windows | Windows Server
The JetTruncateLogInstance function is used during a backup initiated by JetBeginExternalBackup to delete any transaction log files that will no longer be needed once the current backup completes successfully.
Windows XP: JetTruncateLogInstance is introduced in Windows XP.
JET_ERR JET_API JetTruncateLogInstance( __in JET_INSTANCE instance );
The instance to use for this call.
For Windows 2000, the API variant that accepts this parameter is not available because only one instance is supported. The use of this one global instance is implied in this case.
For Windows XP and later releases, the API variant that does not accept this parameter can only be called when the engine is in legacy mode (Windows 2000 compatibility mode) where only one instance is supported. Otherwise, the operation will fail with JET_errRunningInMultiInstanceMode.
This function returns the JET_ERR datatype with one of the following return codes. For more information about the possible ESE errors, see Extensible Storage Engine Errors and Error Handling Parameters.
The operation completed successfully.
Windows Server 2003: This return value is introduced in Windows Server 2003.
The operation failed because the current external backup has been aborted by a call to JetStopBackup.
The operation cannot complete because all activity on the instance that is associated with the session has ceased as a result of a call to JetStopService.
The operation cannot complete because the instance that is associated with the session encountered a fatal error that requires that access to all data be revoked to protect the integrity of that data. This error will only be returned by Windows XP and later releases.
The backup operation failed because it was called out of sequence. JetTruncateLog will return this error if there are any outstanding file handles that were created using JetOpenFile for the instance.
One of the parameters that was provided contained an unexpected value, or the combination of several parameters yielded an unexpected result. This can happen for JetTruncateLog when the specified instance handle is invalid.
The operation failed because no external backup is in progress.
The operation cannot complete because the instance that is associated with the session has not yet been initialized.
The operation cannot complete because a restore operation is in progress on the instance that is associated with the session.
The operation failed because an attempt was made to use the engine in legacy mode (Windows 2000 compatibility mode) where only one instance is supported when in fact multiple instances already exist.
The operation cannot complete because the instance that is associated with the session is being shut down.
If this function succeeds, the set of transaction log files that will no longer be needed once the current backup completes successfully are deleted. The backup state machine will be advanced such that the backup of database files is no longer allowed. Only database patch files and transaction log files are permitted to be opened for backup beyond this point.
If this function fails, the backup state machine can be advanced such that the backup of database files is no longer allowed. Some number of transaction log files might be deleted that is less than the desired number, but they will always be deleted from oldest to youngest.
Requires Windows Vista or Windows XP.
Requires Windows Server 2008 or Windows Server 2003.
Declared in Esent.h.