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

Python MySQLdb vs mysql-connector query performanc... There are a lot of python driver available for MySQL and two stand out the most. The one, traditionally everybody's choice, sort of industrial standar...
Dataimport handler for Sunburnt Solr python librar... Dataimport handler I had to trigger the dataimporter delta-import command from the code so I added support for this function. Example: Followin...
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...