diff --git a/res/res_pjsip_header_funcs.c b/res/res_pjsip_header_funcs.c
index b5383fb324c938e0501ddc99db2fdc359dcc31a0..dc9d6aad4f4701d119e49a01fbacac41b9a21dd9 100644
--- a/res/res_pjsip_header_funcs.c
+++ b/res/res_pjsip_header_funcs.c
@@ -592,6 +592,7 @@ static void outgoing_request(struct ast_sip_session *session, pjsip_tx_data * td
 	AST_LIST_TRAVERSE(list, le, nextptr) {
 		pjsip_msg_add_hdr(tdata->msg, (pjsip_hdr *) pjsip_hdr_clone(pool, le->hdr));
 	}
+	ast_sip_session_remove_datastore(session, datastore->uid);
 }
 
 static struct ast_sip_session_supplement header_funcs_supplement = {