[issue42216] Optimize dict.popitem() & insert use case.

2020-10-30 Thread Inada Naoki
Inada Naoki added the comment: > But `dict.popitem()` returns the last item in the insertion order. The item > must be the last item of collision chain too. This assumption was wrong. Inserting new item may overwrite dummy entry. In this case, the last item in the middle of collision chain.

[issue42216] Optimize dict.popitem() & insert use case.

2020-10-30 Thread Inada Naoki
Change by Inada Naoki : -- keywords: +patch pull_requests: +21973 stage: -> patch review pull_request: https://github.com/python/cpython/pull/23054 ___ Python tracker ___

[issue42216] Optimize dict.popitem() & insert use case.

2020-10-30 Thread Inada Naoki
New submission from Inada Naoki : PyDict_DelItem stores DUMMY entry in the hash table. Without DUMMY, collision chain will be broken so proving will be not working. But `dict.popitem()` returns the last item in the insertion order. The item must be the last item of collision chain too. So `di