# Buggy code
def _exportFile(self, otherCls, jobStoreFileID, url):
    """
    Refer to exportFile docstring for information about this method.

    :param type otherCls: The concrete subclass of AbstractJobStore that supports exporting to the given URL.
    :param str jobStoreFileID: The id of the file that will be exported.
    :param urlparse.ParseResult url: The parsed url given to importFile.
    """
    with self.readFileStream(jobStoreFileID) as readable:
        otherCls._writeToUrl(readable, url)


# Traceback (boto.exception.S3CreateError)
ubuntu@ip-172-31-24-34:~/common-workflow-language$ toil clean aws:us-west-2:peter-cwltoil-test
2016-04-13 15:36:32,632 INFO:toil.lib.bioio: Logging set at level: INFO
2016-04-13 15:36:32,632 INFO:toil.utils.toilClean: Parsed arguments
2016-04-13 15:36:32,633 INFO:toil.utils.toilClean: Checking if we have files for toil
Traceback (most recent call last):
File "/usr/local/bin/toil", line 9, in <module>
load_entry_point('toil==3.2.0a2.dev134', 'console_scripts', 'toil')()
File "/usr/local/lib/python2.7/dist-packages/toil/utils/toilMain.py", line 30, in main
module.main()
File "/usr/local/lib/python2.7/dist-packages/toil/utils/toilClean.py", line 53, in main
jobStore = Toil.loadOrCreateJobStore(options.jobStore)
File "/usr/local/lib/python2.7/dist-packages/toil/common.py", line 501, in loadOrCreateJobStore
return AWSJobStore.loadOrCreateJobStore(jobStoreArgs, config=config)
File "/usr/local/lib/python2.7/dist-packages/toil/jobStores/aws/jobStore.py", line 117, in loadOrCreateJobStore
return cls(region, namePrefix, config=config, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/toil/jobStores/aws/jobStore.py", line 174, in __init__
self.filesBucket = self._getOrCreateBucket(qualify('files'), versioning=True)
File "/usr/local/lib/python2.7/dist-packages/toil/jobStores/aws/jobStore.py", line 469, in _getOrCreateBucket
bucket = self.s3.create_bucket(bucket_name, location=self.region)
File "/usr/local/lib/python2.7/dist-packages/boto/s3/connection.py", line 616, in create_bucket
response.status, response.reason, body)
boto.exception.S3CreateError: S3CreateError: 409 Conflict
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>BucketAlreadyExists</Code><Message>The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again.</Message><BucketName>peter-cwltoil-test--files</BucketName><RequestId>DAF5D5E6B138F1AB</RequestId><HostId>t9Fz0/fKNcxA5q7gLBuk7FMu9AxCD4AdyXMIWhWOtJVyNS8ARDxnWDQOBZdeTmpkcVtXa9brMss=</HostId></Error>

# Fixed code
def _exportFile(self, otherCls, jobStoreFileID, url):
    """
    Refer to exportFile docstring for information about this method.

    :param AbstractJobStore otherCls: The concrete subclass of AbstractJobStore that supports
           exporting to the given URL. Note that the type annotation here is not completely
           accurate. This is not an instance, it's a class, but there is no way to reflect
           that in PEP-484 type hints.

    :param str jobStoreFileID: The id of the file that will be exported.

    :param urlparse.ParseResult url: The parsed URL of the file to export to.
    """
    with self.readFileStream(jobStoreFileID) as readable:
        otherCls._writeToUrl(readable, url)