I work with BJ and our issue ended up being related to using Microsoft SQL server as our database. We found out that this is an open bug when using MSSQL. The bug is MDL-34744. The solution for us was:
"To get around this, I modified \backup\util\dbops\backup_controller_dbops_class.php (around line 141&150), so that a real table was created/deleted, instead of using MSSQLs session based temp tables (just removed "temp" in the calls to dbman, ie
$dbman->create_temp_table($xmldb_table); becomes $dbman->create_table($xmldb_table);
and around 150
$dbman->drop_temp_table($table); becomes $dbman->drop_table($table);"
After editing the file we were able to create new backups and restore them without the process hanging.