Marten Kenbeek
980dfca717
[1.8.x] Fixed #24366 -- Optimized traversal of large migration dependency graphs.
...
Switched from an adjancency list and uncached, iterative depth-first
search to a Node-based design with direct parent/child links and a
cached, recursive depth-first search. With this change, calculating
a migration plan for a large graph takes several seconds instead of
several hours.
Marked test `migrations.test_graph.GraphTests.test_dfs` as an expected
failure due to reaching the maximum recursion depth.
Backport of 78d43a5e1064b63db1c486516c4263ef1c4c975c from master
2015-02-23 12:55:43 +01:00
..
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-10 19:55:42 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-17 19:05:31 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-12 14:20:17 -05:00
2015-02-11 13:01:25 -05:00
2015-02-13 11:24:25 +11:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 12:34:23 -05:00
2015-02-17 19:05:31 -05:00
2015-02-14 22:36:49 -05:00
2015-02-17 06:21:59 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-20 21:55:50 +07:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-21 21:44:05 +07:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-16 18:06:13 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-20 11:47:48 +00:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-12 08:53:03 +11:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-12 08:53:03 +11:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-18 07:36:02 -05:00
2015-02-11 11:47:58 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-14 18:39:17 -05:00
2015-02-20 11:47:48 +00:00
2015-02-15 20:48:48 +01:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-20 21:55:50 +07:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-19 20:19:38 +01:00
2015-02-11 11:55:53 -05:00
2015-02-09 14:24:06 -05:00
2015-02-03 18:31:17 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-11 11:55:05 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-23 12:55:43 +01:00
2015-02-21 14:26:47 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-20 13:11:59 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-17 13:55:18 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-21 21:44:05 +07:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-01-28 11:03:25 +11:00
2015-02-09 14:24:06 -05:00
2015-02-20 16:50:41 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-20 13:11:59 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-11 11:55:40 -05:00
2015-02-09 14:24:06 -05:00
2015-02-17 06:21:59 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-19 02:44:08 +02:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-20 11:47:48 +00:00
2015-02-13 12:45:35 -05:00
2015-02-19 19:37:22 -05:00
2015-02-11 11:54:51 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-16 08:43:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-20 21:55:50 +07:00
2015-02-21 13:08:15 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-19 22:10:56 +01:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-17 19:05:31 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-12 08:19:10 -05:00
2015-02-11 10:17:53 -05:00
2015-02-17 19:05:31 -05:00
2015-02-09 14:24:06 -05:00
2015-02-09 14:24:06 -05:00
2015-02-22 15:47:11 +01:00
2015-02-11 12:35:32 -05:00
2015-02-09 14:24:06 -05:00
2015-02-17 06:35:17 -05:00