On Thu, Aug 20, 2009 at 6:28 PM, Lukasz Szybalski<[email protected]> wrote: > > On Thu, Aug 20, 2009 at 5:13 PM, Lukasz Szybalski<[email protected]> wrote: >> Hello, >> I am uploading tickets to trac. 500 a day. After almost a month+ I've >> received this error. >> >> >> Traceback (most recent call last): >> File "xxx.py", line 115, in <module> >> >> filename=server.ticket.putAttachment(number,file_name,file_name,xmlrpclib.Binary(open(os.path.join(folder_name,file_name)).read())) >> File "/usr/lib/python2.5/xmlrpclib.py", line 1147, in __call__ >> return self.__send(self.__name, args) >> File "/usr/lib/python2.5/xmlrpclib.py", line 1437, in __request >> verbose=self.__verbose >> File "/usr/lib/python2.5/xmlrpclib.py", line 1201, in request >> return self._parse_response(h.getfile(), sock) >> File "/usr/lib/python2.5/xmlrpclib.py", line 1340, in _parse_response >> return u.close() >> File "/usr/lib/python2.5/xmlrpclib.py", line 787, in close >> raise Fault(**self._stack[0]) >> xmlrpclib.Fault: <Fault 2: "'[Errno 31] Too many links: >> '/home/trac/trac/attachments/ticket/32433'' while executing >> 'ticket.putAttachment()'"> >> >> >> >> Is there a way to close the xmlrpclib.ServerProxy. I think that is >> what caused this error. Every time I upload a file I create a service >> that connects to trac. I do that because the filename of the file I >> want to upload comes on stdin. > > > I found this: > http://www.wlug.org.nz/EMLINK > > > > Too Many Links > > There are too many hard links to a file or directory on a filesystem. > The exact number allowed is file-system dependent. Eg > /usr/src/linux-2.4.19/include/linux/sysv_fs.h contains > > enum { > > XENIX_LINK_MAX = 126, /* ?? / SYSV_LINK_MAX = 126, / 127? 251? > / V7_LINK_MAX = 126, / ?? */ COH_LINK_MAX = 10000, > > }; > while /usr/src/linux-2.4.19/include/linux/ext3_fs.h has > > 1. define EXT3_LINK_MAX 32000 > > and /usr/src/linux-2.4.19/include/linux/reiserfs_fs.h has > > 1. define REISERFS_LINK_MAX (MAX_US_INT - 1000) > > (for maximum unsigned integer on the system). > > This could be caused by a directory having too many subdirectories > (each subdirectory has .. as a hardlink to it's parent directory which > causes that directory's hardlink count to be increased by one. So yes, > this does mean that you are limited to 32000 subdirectories in one > directory in ext3, even if you have hashdirs enabled.) As a > consequence of this you can stat(2) a directory and add one (for ..) > and you will know how many directories are in the current directory. > (or subtract one (for .) to find out how many subdirectories there > are). > > Some file systems (such as FAT) don't have hardlinks so the hardlink > count can't overflow, and you can't rely on the hardlink count of a > directory to be representive of how many subdirectories it has. > > What a confusing world we live in. > > > I did reach the 32000 tickets. I have exactly: > 31999 folder for ticket# on my ext3. > > ls -l |wc -l > 31999 > > How do I increase that number on ext3? > > Thanks, > Lucas
Well, when lots of SVN users started hitting limits like that for revisions, they just added a second directory level to handle the situation. I don't think many Trac instances have, to this point, been used in a such a way that they've hit this limit. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Trac Users" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/trac-users?hl=en -~----------~----~----~----~------~----~------~--~---
