File tree Expand file tree Collapse file tree 2 files changed +14
-4
lines changed
Expand file tree Collapse file tree 2 files changed +14
-4
lines changed Original file line number Diff line number Diff line change @@ -1042,9 +1042,12 @@ def clear(self):
10421042 """Clean up pending upload.
10431043 Uploaded files and table records are removed, and another upload can start.
10441044 """
1045- move_to_tmp (self .upload_dir , self .id )
1046- db .session .delete (self )
1047- db .session .commit ()
1045+ try :
1046+ move_to_tmp (self .upload_dir , self .id )
1047+ db .session .delete (self )
1048+ db .session .commit ()
1049+ except Exception :
1050+ logging .exception (f"Failed to clear upload." )
10481051
10491052 def process_chunks (
10501053 self , use_shared_chunk_dir : bool
Original file line number Diff line number Diff line change 1313from flask_login import current_user
1414from marshmallow import ValidationError
1515from sqlalchemy .exc import IntegrityError
16+ from sqlalchemy .orm .exc import ObjectDeletedError
1617
1718from mergin .sync .tasks import remove_transaction_chunks
1819
@@ -333,7 +334,12 @@ def create_project_version(id):
333334 )
334335 project_version_created .send (pv )
335336 push_finished .send (pv )
336- except (psycopg2 .Error , FileNotFoundError , IntegrityError ) as err :
337+ except (
338+ psycopg2 .Error ,
339+ FileNotFoundError ,
340+ IntegrityError ,
341+ ObjectDeletedError ,
342+ ) as err :
337343 db .session .rollback ()
338344 logging .exception (
339345 f"Failed to finish push for project: { project .id } , project version: { v_next_version } , "
@@ -346,6 +352,7 @@ def create_project_version(id):
346352 ).count ()
347353 ):
348354 move_to_tmp (version_dir )
355+ upload .clear ()
349356 return UploadError ().response (422 )
350357 # catch exception during pg transaction so we can rollback and prevent PendingRollbackError during upload clean up
351358 except gevent .timeout .Timeout :
You can’t perform that action at this time.
0 commit comments