Python error: AttributeError: __exit__

I just had a 30 minutes worth of debugging on a stupid mistake I made. I wanted to check the free space on the target server before I actually start to do the cloning of a database in the python framework we wrote for automating DBA tasks. The check was pretty simple:

But this raised an error: AttributeError: __exit__

I’ve spent almost 30 minutes when I realized the os.statvfs returns and “old style” object which doesn’t have __exit__ method by default. [1]

Changed the code to not use with [2] fixed the problem:

[1] object type in Python: http://docs.python.org/2/library/functions.html#object

[2] read more about with statement: http://www.python.org/dev/peps/pep-0343/

You might like these too

Solr python interface – Sunburnt fork I forked tow (Toby White, gratitude for his great work) sunburnt repository from github because I needed range facet funcionality and the workaround (...
BitTornado library forked by me on GitHub I just forked and committed some patches to the BitTornado library on GitHub. https://github.com/charlesnagy/BitTornado Right now I only committ...
5 things to love about python Syntax Takes a bit of time to get used to it but after a certain point it just becomes natural. Like english. No heavy-weight operators or complicate...