Currently the cascading delete functionality requires many users to
change how their app works slightly to accommodate this "feature".

I'm curious how people are disabling or working around this aspect of
django.

I've heard many people are implementing custom delete() methods on the
model class...... But after reading "http://docs.djangoproject.com/en/
dev/topics/db/queries/#deleting-objects" I found a nice little gotcha.

"Keep in mind that this will, whenever possible, be executed purely in
SQL, and so the delete() methods of individual object instances will
not necessarily be called during the process. If you've provided a
custom delete() method on a model class and want to ensure that it is
called, you will need to "manually" delete instances of that model
(e.g., by iterating over a QuerySet and calling delete() on each
object individually) rather than using the bulk delete() method of a
QuerySet."

So before we had a bulk delete and now to get around functionality we
dont want, we have to lose bulk deletes and do them one at a time?!?

I'm building an application to track IP addresses on many corporate
networks with a single subnet having around 65535 rows for IP
addresses..... Now this app has thousands of those subnets which means
I have millions of rows for IP addresses.

Since they have relationships to the parent subnet, switchports,
devices, contacts, locations, applications etc. These relationships
need to be cleared before removing the IP, because nothing else is
supposed to get deleted.

When before I could delete 5 subnets which removed a few hundred
thousand rows in a couple seconds, now to delete a single subnet takes
upwards of 5 minutes using the "for query in queryset: query.delete()"
method.

So unless I'm missing something it would appear django is crippling
any application not wanting a cascading delete.... Since this is an
inventory style application any missing data is extremely bad. Waiting
5 minutes for something that used to take a few seconds is also
unacceptable.

I'm seeking all suggestions or ideas how to keep my other models from
getting deleted, without crippling my applications performance.

Please advise,
Zach

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-developers@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to