{"thread":{"id":"12417","subject":"`git svn dcommit` segfault","startedAt":"2008-03-02T05:20:35Z","lastAt":"2008-03-02T05:20:35Z","messageCount":1,"participants":["Tim Stoakes"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"70577","messageId":"20080302052034.GE9577@mail.stoakes.net","threadId":"12417","inReplyTo":null,"subject":"`git svn dcommit` segfault","fromName":"Tim Stoakes","fromEmail":"tim@stoakes.net","sentAt":"2008-03-02T05:20:35Z","receivedAt":"2008-03-02T05:20:35Z","isPatch":false,"sender":{"key":"tim@stoakes.net","avatar":null},"body":"Hi all,\n\nI've been using git-svn on this repository for a while now, and all has\nbeen well. However, this time it segfaulted in the middle of a dcommit\n(4 commits into about 15). I've had to sanitise the file names, as this\nis a commercial project.\n\n$ git svn dcommit\n...\n        M       <snip_file>\nCommitted r164\n        M       <snip_file>\nr164 = 72ff1bf62f9b3828efb93d1b2681d154e960b8a2 (git-svn)\nNo changes between current HEAD and refs/remotes/git-svn\nResetting to the latest refs/remotes/git-svn\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\n<snip_file>: needs update\nSegmentation fault\n\nIt was git-svn that segfaulted I assume, not any git commands it calls,\nbecause I see this in my syslog:\ngit-svn[27348]: segfault at 18 rip 2b9bc87e17e3 rsp 7fffe6ed04f0 error 4\n\n\nAnd now I have a dirty checkout:\n$ git status\n# On branch master\n# Changed but not updated:\n#   (use \"git add <file>...\" to update what will be committed)\n#\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#       modified:   <snip_file>\n#\n# Untracked files:\n#   (use \"git add <file>...\" to include in what will be committed)\n#\n#           <snip_file>\n#           <snip_file>\n#           <snip_file>\n#           <snip_file>\n#           <snip_file>\n#           <snip_file>\n#           <snip_file>\nno changes added to commit (use \"git add\" and/or \"git commit -a\")\n\nIt *looks* as if this dirty state is the sum total of the outstanding\ncommits, so I don't think I've lost my work, only my history of that\nwork.\n\n\n`git log` shows up to r164, the last one before the segfault.\n\n\nI can't run dcommit again, because my checkout is now dirty:\n$ git svn dcommit\nCannot dcommit with a dirty index.  Commit your changes first, or stash\nthem with `git stash'.\n\n\nfsck shows some dangling entries:\n$ git fsck\ndangling blob 6d806e5c5dc0bfcbae3511a37695e58ae0e0c527\ndangling tree d8603f524dbb9d2c4a76fe5b2c147c1140daf808\ndangling tree 93027419e21371bb94e488ab6dec085147622ffa\ndangling blob 0155d5f782e77a77a70b2fd7835cd84bd0bfb829\ndangling tree 05164a3f07b46d0e2cf700688e3484229beb31b4\ndangling blob 0db60b87c33d0cdfdabfd24028dbb1185caabc4f\ndangling tree 74560de127259a16519dc69b10aace3e167c0150\ndangling blob 23e81c44b8325f976146072f061b97c015006d3b\ndangling tree f72af1a9c583c560b17668a0417a8d653a5110df\ndangling blob 44cc9844484fd072f98d4ac0f6e395a57c5d9277\n\n\nI'd re-run it to get a core file, but I don't know how to get myself\nback into the initial state.\n\nI'm using 'git version 1.5.4.3', and 'svn, version 1.4.6 (r28521)' on\nthe client. The server is 'svn, version 1.3.1 (r19032)', I think.\n\nI'm a bit stuck! Any help is much appreciated. Would any other\ninformation be useful?\n\nThanks\nTim\n\n-- \nTim Stoakes\n"}]}