Message258022
Both patches are basically equivalent. The first one collects all scandir() results in a list, the second one collects only directory names in a list. The purpose of using os.scandir() in os.walk() was a speed up (issue23605), and both patches preserve it.
Yes, the number of FDs used is equivalent to the depth of the tree which can be very deep (I just created a tree depth of 1000 levels). And what is worse, all these FDs can be effectively leaked if the walking was not finished. This is unwanted behavior change. |
|
Date |
User |
Action |
Args |
2016-01-11 21:35:22 | serhiy.storchaka | set | recipients:
+ serhiy.storchaka, gvanrossum, vstinner, larry, benhoyt |
2016-01-11 21:35:22 | serhiy.storchaka | set | messageid: <1452548122.1.0.103553265034.issue25995@psf.upfronthosting.co.za> |
2016-01-11 21:35:22 | serhiy.storchaka | link | issue25995 messages |
2016-01-11 21:35:22 | serhiy.storchaka | create | |
|