Last modified: March 09, 2015
Applies to: Windows | Windows Server
The JetEndExternalBackup function ends an external backup session. This function is the last API element in a series of API elements that must be called to execute a successful online (non-VSS based) backup.
JET_ERR JET_API JetEndExternalBackup(void);
This function has no parameters.
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.
The operation cannot complete because the instance that is associated with the session has not been yet been initialized.
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.
Windows XP: This return value is introduced in Windows XP
The operation cannot complete because the instance that is associated with the session encountered a fatal error that requires access to all data be revoked to protect the integrity of that data.
The operation cannot complete because the instance that is associated with the session is being shut down.
The operation cannot complete because a restore operation is in progress on the instance that is associated with the session.
The operation failed because no external backup is in progress.
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.
Windows XP: This return value is introduced in Windows XP.
The caller terminated a backup in the middle of the backup sequence without signaling the intention with JetStopBackup. This error is a result of a bug in the backup client in Windows Server 2003 and later. On Windows XP this error is returned for an intentional termination of the external backup sequence.
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.
If this function succeeds, the external backup was a success. Success indicates that all files (for example, databases and logs) that are appropriate for the type of backup (specified in JetBeginExternalBackup) were retrieved from the backup engine. The backed up files can be recovered with hard recovery (JetExternalRestore).
If this function fails, the external backup usually ends. Failure means that the backup is invalid because of a client or an application usage error. It is important to check the return code for this API to verify that the backup sequence was successful.
If the engine is configured to log events, an event is logged to indicate the resolution of the external backup.
If the backup sequence is not completed in order and with a successful call to JetEndExternalBackup, subsequent incremental backups might contain more data than the application anticipated.
For more information about the external backup API sequence, see JetBeginExternalBackup.
Before Windows Vista, if the log truncation was not done, the engine considered that the backup was a copy backup. However, the backup might be a normal backup for which truncation was not done (for example, if there are detached databases). The JET_bitBackupTruncateDone option can be used to inform the engine about this and allow appropriate database header modifications.
Requires Windows Vista, Windows XP, or Windows 2000 Professional.
Requires Windows Server 2008, Windows Server 2003, or Windows 2000 Server.
Declared in Esent.h.