This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author mgedmin
Recipients mgedmin
Date 2016-12-07.14:47:11
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1481122031.58.0.509371094394.issue28894@psf.upfronthosting.co.za>
In-reply-to
Content
Run the following script with Python 3.6.0rc1:

    class O:
        pass

    o = O()
    for n in range(20):
        print(n)
        o.x = 42
        o.__dict__.pop('x', None)

You can observe the memory usage of the Python process growing exponentially.

E.g. in bash:

    ulimit -v 1000000    # don't push other processes into swap please
    python3.6 break.py
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Traceback (most recent call last):
      File "break.py", line 7, in <module>
        o.x = 42
    MemoryError
History
Date User Action Args
2016-12-07 14:47:11mgedminsetrecipients: + mgedmin
2016-12-07 14:47:11mgedminsetmessageid: <1481122031.58.0.509371094394.issue28894@psf.upfronthosting.co.za>
2016-12-07 14:47:11mgedminlinkissue28894 messages
2016-12-07 14:47:11mgedmincreate