let handle = MXMetricManager.makeLogHandle(category: "DatabaseExpirationHandler")

mxSignpost(.event, log: handle, name: "Entered")
cancelOperations()
closeDatabase()
mxSignpost(.event, log: handle, name: "Exited")

UIApplication.shared.endBackgroundTask(backgroundTaskIdentifier)

let minimumTimeRemaining = min(5, estimateProcessingTime(inputData))

if UIApplication.shared.backgroundTimeRemaining > minimumTimeRemaining {
	return UIApllication.shared.beginBackgroundTask { ... }
} else {
	registerProcessingTask(inputData) // 나중으로 미루라.
	return .invalid
}