Message276483
This issue is caused by dictresize() and _PyObjectDict_SetItem()
1. a.__dict__.pop('a') convert the dict to combined table which has double keysize.
2. a.a = 1 converts the dict to split table again if there are no instances sharing key with class.
As I wrote before, pop, popitem, and del should not increase key size.
And _PyObjectDict_SetItem shouldn't convert the dict to split-table when the dict doesn't share keys
with the class before calling PyDict_SetItem. |
|
Date |
User |
Action |
Args |
2016-09-14 20:16:59 | methane | set | recipients:
+ methane, vstinner, berker.peksag, minrk, xiang.zhang |
2016-09-14 20:16:59 | methane | set | messageid: <1473884219.69.0.826381374874.issue28147@psf.upfronthosting.co.za> |
2016-09-14 20:16:59 | methane | link | issue28147 messages |
2016-09-14 20:16:59 | methane | create | |
|