public void removeWorkflowWithExpiry(
            String workflowId, boolean archiveWorkflow, int ttlSeconds) {
        try {
            WorkflowModel workflow = getWorkflowModelFromDataStore(workflowId, true);

            removeWorkflowIndex(workflow, archiveWorkflow);
            // remove workflow from DAO with TTL
            executionDAO.removeWorkflowWithExpiry(workflowId, ttlSeconds);
        } catch (Exception e) {
            Monitors.recordDaoError("executionDao", "removeWorkflow");
            throw new TransientException("Error removing workflow: " + workflowId, e);
        }
    }
Removes the workflow from the data store.

@param workflowId the id of the workflow to be removed
@param archiveWorkflow if true, the workflow and associated tasks will be archived in the
    {@link IndexDAO} after removal from {@link ExecutionDAO}.
core/src/main/java/com/netflix/conductor/core/dal/ExecutionDAOFacade.java