Changes between Version 5 and Version 6 of Ticket #10919, comment 13


Ignore:
Timestamp:
Mar 18, 2020, 10:27:12 AM (5 years ago)
Author:
terminator14

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #10919, comment 13

    v5 v6  
    2626- The actual deletion database operation, which happens after the confirmation
    2727
    28 The actual deletion operation from the database can also take a while. If you have enough related objects, and the operation takes long enough, the browser may also stop waiting for a response and show an error. This would also be nice to address, but would likely be a far more difficult problem. The deletion would need to be an asynchronous operation which would mark the object as deleted (or hidden) so that Django Admin no longer shows it to logged in users, but it would have to run in the background until it is complete. Or perhaps instead of running in the background, it can tell the database to delete those related objects, and return without waiting to find out of the database succeeded? Just spitballing here. The solution would need to take into account things like:
     28The actual deletion operation from the database can also take a while. If you have enough related objects, and the operation takes long enough, the browser may also stop waiting for a response and show an error. This would also be nice to address, but would likely be a far more difficult problem. The deletion would need to be an asynchronous operation which would mark the object as deleted (or hidden) so that Django Admin no longer shows it to logged in users, but it would have to run in the background until it is complete. Or perhaps instead of running in the background, it can tell the database to delete those related objects, and return without waiting to find out of the database succeeded? Just spitballing here. The solution may need to consider things like:
    2929
    30 - Being compatible with WSGI, which may be using threads, or one of several async libraries
     30- Being compatible with WSGI, which may be using processes, threads, or one of several async libraries
    3131- Being compatible with Django channels, which also probably impacts how background tasks run
    3232- The new Django 3 async efforts
Back to Top