I want to delete about 40 000 records from table with 200 000 records. This table has DeleteAction with properties = Cascade.
I made query (not select!!!, not delete_from !!!) but it is strange becouse time for deleting each 1000 rows increasing !!!
new QueryRun(query);
while(queryRun.next())
{
MyTable= queryRun.get(tableNum(MyTable));
MyTable.doDelete();
}
Diff: 18,03 seconds (Sum: 18,03 seconds) : DeleteMethod BEFORE
Diff: 1,74 seconds (Sum: 19,77 seconds) : DeleteMethod row=1
Diff: 5,36 seconds (Sum: 25,13 seconds) : DeleteMethod row=1000
Diff: 7,55 seconds (Sum: 32,67 seconds) : DeleteMethod row=2000
Diff: 9,86 seconds (Sum: 42,53 seconds) : DeleteMethod row=3000
Diff: 12,03 seconds (Sum: 54,56 seconds) : DeleteMethod row=4000
Diff: 14,39 seconds (Sum: 68,95 seconds) : DeleteMethod row=5000
Diff: 18,05 seconds (Sum: 87,00 seconds) : DeleteMethod row=6000
Diff: 21,22 seconds (Sum: 108,22 seconds) : DeleteMethod row=7000
Diff: 24,78 seconds (Sum: 133,00 seconds) : DeleteMethod row=8000
..
Diff: 67,08 seconds (Sum: 741,38 seconds) : DeleteMethod row=20000
..
Diff: 96,05 seconds (Sum: 2 151,22 seconds) : DeleteMethod row=37000
Diff: 96,70 seconds (Sum: 2 247,92 seconds) : DeleteMethod row=38000
Diff: 97,23 seconds (Sum: 2 345,16 seconds) : DeleteMethod row=39000
Why time for deleting first 1000 rows is about 5 second but time for deleting rows 38001-39000 is about 100 seconds???
When I changed DeleteAction from Cascade to None all Diff is normal, about 0.6 seconds / 1000 rows. How can I disable DeleteAction on query (something like skipDeleteAction) ?
*This post is locked for comments