Edgewall Software

Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#9589 closed defect (cantfix)

ExtractionError: Can't extract file(s) to egg cache, [Errno 20] Not a directory

Reported by: gardiner91@… Owned by:
Priority: normal Milestone:
Component: general Version: 0.11-stable
Severity: major Keywords: plugin
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:


When installing a plugin after uploading finishes this message is displayed.

I've tried changing permissions, changing python_egg_cache directory. But after removing plugin from "plugins/" directory everything works perfectly.

I've tried alot of different cache directory's:

  • /root/.python_egg
  • /tmp
  • /usr/local/lib/python2.7/python_egg_cache

All returning same results.

Error Message:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/Trac-0.11-py2.7.egg/trac/web/api.py", line 339, in send_error
  File "/usr/local/lib/python2.7/site-packages/Trac-0.11-py2.7.egg/trac/web/chrome.py", line 683, in render_template
    template = self.load_template(filename, method=method)
  File "/usr/local/lib/python2.7/site-packages/Trac-0.11-py2.7.egg/trac/web/chrome.py", line 659, in load_template
    self.templates = TemplateLoader(self.get_all_templates_dirs(),
  File "/usr/local/lib/python2.7/site-packages/Trac-0.11-py2.7.egg/trac/web/chrome.py", line 406, in get_all_templates_dirs
    dirs += provider.get_templates_dirs()
  File "/var/repositories/_web/trac/xxxxxxxxx/plugins/TracDownloader-0.1-trac-0.11.egg/tracdownloader/web_ui.py", line 706, in get_templates_dirs
    return [resource_filename(__name__, 'templates')]
  File "build/bdist.linux-i686/egg/pkg_resources.py", line 882, in resource_filename
    self, resource_name
  File "build/bdist.linux-i686/egg/pkg_resources.py", line 1352, in get_resource_filename
    return self._extract_resource(manager, zip_path)
  File "build/bdist.linux-i686/egg/pkg_resources.py", line 1359, in _extract_resource
    manager, os.path.join(zip_path, name)
  File "build/bdist.linux-i686/egg/pkg_resources.py", line 1406, in _extract_resource
    manager.extraction_error()  # report a user-friendly error
  File "build/bdist.linux-i686/egg/pkg_resources.py", line 928, in extraction_error
    raise err
ExtractionError: Can't extract file(s) to egg cache

The following error occurred while trying to extract file(s) to the Python egg

  [Errno 20] Not a directory

The Python egg cache directory is currently set to:


Perhaps your account does not have write access to this directory?  You can
change the cache directory by setting the PYTHON_EGG_CACHE environment
variable to point to an accessible directory.

Python Version:

Python 2.7 (r27:82500, Aug 28 2010, 22:33:52)
[GCC 3.4.6 20060404 (Red Hat 3.4.6-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.

Trac Version:

tracd 0.11

OS Version:

Linux xxxxxxx.xxxxxxxxxxxxxx.xxx 2.6.18-93.cc4 #1 SMP Mon Aug 11 20:37:16 EDT 2008 i686 i686 i386 GNU/Linux

Attachments (0)

Change History (2)

comment:1 by Remy Blank, 13 years ago

Resolution: cantfix
Status: newclosed

If the message is always the same (including the path), then you don't set the egg cache path correctly. You also need to make sure that the user running the web server has read and write access to the egg cache.

The error "Not a directory" may give a hint: does the egg cache directory actually exist, and is it a directory?

Anyway, this is a local InstallationIssue, and you may have more success on the MailingList or IrcChannel.

comment:2 by gardiner91@…, 13 years ago

The Directory Does Exist, The message does change depending on the egg cache directory. But as its says "Not a directory"

Would mean it must be a file so somehow it is trying to write the cache to a file?

Modify Ticket

Change Properties
Set your email in Preferences
as closed The ticket will remain with no owner.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from (none) to the specified user.

Add Comment

E-mail address and name can be saved in the Preferences .
Note: See TracTickets for help on using tickets.