[chromium-dev] Re: Git woes
On Thu, Aug 27, 2009 at 23:07, Nico Webertha...@chromium.org wrote: I accidentally fixed the problem by running something like rm -rf .git/svn/ git svn fetch; This one is most likely, the next one being the git pull. ... git merge trunk git merge refs/remotes/origin/trunk git checkout -f HEAD This command should do nothing, unless you removed the files outside .git directory (also called working tree). It is the same as git reset --hard (HEAD will be assumed): get tree from the revision pointed by HEAD and write them in the file system. git pull This may have cured you of the problem too, by fetching some data from the parent repository. It may have been enough to never access the problematic pack at its problematic place anymore. . Not sure what fixed it, but pulling works again. Yay, I guess, but of course I fixed it about 2 minutes before someone asked me to send a dtrace to the git mailing list :-/ There is also git fsck --full, which can tell more about about where problems located, so you can try to look at backups or parent/sibling repositories for corrupted data. It is generally enough to just copy the objects (files from .git/objects/?? and .git/objects/pack/*, even blindly all of them) into the problematic repository. You can repack (either git gc or git repack -ad) later to get rid of the data not referenced by your particular set of references. But in all cases, if you have something which looks like a repository corruption, developers at g...@vger.kernel.org would like to know about it. Thank you. P.S. Oh, great. Now I'm discovered :) --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
Not knowingly, at least. `git --version` says 1.6.0.2, which I believe is what it always said. On Wed, Aug 26, 2009 at 10:50 PM, Jeremy Moskovichjer...@chromium.org wrote: Git is comprised of billions of tiny orthogonal binaries. When this happened to me the cause was some old git binaries in the path that where being called by others, the version mismatch was silent and caused this error. Have you upgraded to a new version of git recently that might cause such a mismatch? Best regards, Jeremy On Wed, Aug 26, 2009 at 10:42 PM, Nico Weber tha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
Aside from basic stuff like running out of disk space, I have no idea what would cause this problem. (It's weird that pread would fail with no such file when its API is to take an open file descriptor.) One workaround might be to try setting this defined, mentioned in the Makefile: # Define NO_PREAD if you have a problem with pread() system call (e.g. # cygwin.dll before v1.5.22). Not exactly sure it's relevant, but from a script that wraps git where this error came up, the author of the script asks are you on OS X? http://groups.google.com/group/repo-discuss/msg/d6b4fd3d8a1677a2 Unfortunately, either Python or Mac OS X is busted. With multiple cores present, we seem to get the result from waitpid() before all of the changes made by the child process are actually visible in the filesystem, so when we start the next child, the next child might be missing modifications it expected to see. On Wed, Aug 26, 2009 at 10:42 PM, Nico Webertha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
https://kerneltrap.org/mailarchive/git/2007/7/23/252538 old and maybe obsolete, but has some exposition from Linus On Thu, Aug 27, 2009 at 7:51 AM, Evan Martine...@chromium.org wrote: Aside from basic stuff like running out of disk space, I have no idea what would cause this problem. (It's weird that pread would fail with no such file when its API is to take an open file descriptor.) One workaround might be to try setting this defined, mentioned in the Makefile: # Define NO_PREAD if you have a problem with pread() system call (e.g. # cygwin.dll before v1.5.22). Not exactly sure it's relevant, but from a script that wraps git where this error came up, the author of the script asks are you on OS X? http://groups.google.com/group/repo-discuss/msg/d6b4fd3d8a1677a2 Unfortunately, either Python or Mac OS X is busted. With multiple cores present, we seem to get the result from waitpid() before all of the changes made by the child process are actually visible in the filesystem, so when we start the next child, the next child might be missing modifications it expected to see. On Wed, Aug 26, 2009 at 10:42 PM, Nico Webertha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
Try git gc On Thu, Aug 27, 2009 at 8:27 AM, Nico Webertha...@chromium.org wrote: The pack file truncated theory sounds most likely. Is there any way I could tell git to regenerate the newest N packfiles? On Thu, Aug 27, 2009 at 8:00 AM, Evan Martine...@chromium.org wrote: https://kerneltrap.org/mailarchive/git/2007/7/23/252538 old and maybe obsolete, but has some exposition from Linus On Thu, Aug 27, 2009 at 7:51 AM, Evan Martine...@chromium.org wrote: Aside from basic stuff like running out of disk space, I have no idea what would cause this problem. (It's weird that pread would fail with no such file when its API is to take an open file descriptor.) One workaround might be to try setting this defined, mentioned in the Makefile: # Define NO_PREAD if you have a problem with pread() system call (e.g. # cygwin.dll before v1.5.22). Not exactly sure it's relevant, but from a script that wraps git where this error came up, the author of the script asks are you on OS X? http://groups.google.com/group/repo-discuss/msg/d6b4fd3d8a1677a2 Unfortunately, either Python or Mac OS X is busted. With multiple cores present, we seem to get the result from waitpid() before all of the changes made by the child process are actually visible in the filesystem, so when we start the next child, the next child might be missing modifications it expected to see. On Wed, Aug 26, 2009 at 10:42 PM, Nico Webertha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
The pack file truncated theory sounds most likely. Is there any way I could tell git to regenerate the newest N packfiles? On Thu, Aug 27, 2009 at 8:00 AM, Evan Martine...@chromium.org wrote: https://kerneltrap.org/mailarchive/git/2007/7/23/252538 old and maybe obsolete, but has some exposition from Linus On Thu, Aug 27, 2009 at 7:51 AM, Evan Martine...@chromium.org wrote: Aside from basic stuff like running out of disk space, I have no idea what would cause this problem. (It's weird that pread would fail with no such file when its API is to take an open file descriptor.) One workaround might be to try setting this defined, mentioned in the Makefile: # Define NO_PREAD if you have a problem with pread() system call (e.g. # cygwin.dll before v1.5.22). Not exactly sure it's relevant, but from a script that wraps git where this error came up, the author of the script asks are you on OS X? http://groups.google.com/group/repo-discuss/msg/d6b4fd3d8a1677a2 Unfortunately, either Python or Mac OS X is busted. With multiple cores present, we seem to get the result from waitpid() before all of the changes made by the child process are actually visible in the filesystem, so when we start the next child, the next child might be missing modifications it expected to see. On Wed, Aug 26, 2009 at 10:42 PM, Nico Webertha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
Didn't help. Oh well, back to my fallback svn client for now. Will create a new git checkout in the new feature. On Thu, Aug 27, 2009 at 9:12 AM, Evan Martine...@chromium.org wrote: Try git gc On Thu, Aug 27, 2009 at 8:27 AM, Nico Webertha...@chromium.org wrote: The pack file truncated theory sounds most likely. Is there any way I could tell git to regenerate the newest N packfiles? On Thu, Aug 27, 2009 at 8:00 AM, Evan Martine...@chromium.org wrote: https://kerneltrap.org/mailarchive/git/2007/7/23/252538 old and maybe obsolete, but has some exposition from Linus On Thu, Aug 27, 2009 at 7:51 AM, Evan Martine...@chromium.org wrote: Aside from basic stuff like running out of disk space, I have no idea what would cause this problem. (It's weird that pread would fail with no such file when its API is to take an open file descriptor.) One workaround might be to try setting this defined, mentioned in the Makefile: # Define NO_PREAD if you have a problem with pread() system call (e.g. # cygwin.dll before v1.5.22). Not exactly sure it's relevant, but from a script that wraps git where this error came up, the author of the script asks are you on OS X? http://groups.google.com/group/repo-discuss/msg/d6b4fd3d8a1677a2 Unfortunately, either Python or Mac OS X is busted. With multiple cores present, we seem to get the result from waitpid() before all of the changes made by the child process are actually visible in the filesystem, so when we start the next child, the next child might be missing modifications it expected to see. On Wed, Aug 26, 2009 at 10:42 PM, Nico Webertha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
I've had this issue before and found that if I used svn rebase it would sometimes fix it. So I am thinking perhaps instead of git pull, you could attempt doing git fetch first and then git merge? This would do the same thing, except not in atomic op. :DG On Thu, Aug 27, 2009 at 10:49 AM, Nico Webertha...@chromium.org wrote: Didn't help. Oh well, back to my fallback svn client for now. Will create a new git checkout in the new feature. On Thu, Aug 27, 2009 at 9:12 AM, Evan Martine...@chromium.org wrote: Try git gc On Thu, Aug 27, 2009 at 8:27 AM, Nico Webertha...@chromium.org wrote: The pack file truncated theory sounds most likely. Is there any way I could tell git to regenerate the newest N packfiles? On Thu, Aug 27, 2009 at 8:00 AM, Evan Martine...@chromium.org wrote: https://kerneltrap.org/mailarchive/git/2007/7/23/252538 old and maybe obsolete, but has some exposition from Linus On Thu, Aug 27, 2009 at 7:51 AM, Evan Martine...@chromium.org wrote: Aside from basic stuff like running out of disk space, I have no idea what would cause this problem. (It's weird that pread would fail with no such file when its API is to take an open file descriptor.) One workaround might be to try setting this defined, mentioned in the Makefile: # Define NO_PREAD if you have a problem with pread() system call (e.g. # cygwin.dll before v1.5.22). Not exactly sure it's relevant, but from a script that wraps git where this error came up, the author of the script asks are you on OS X? http://groups.google.com/group/repo-discuss/msg/d6b4fd3d8a1677a2 Unfortunately, either Python or Mac OS X is busted. With multiple cores present, we seem to get the result from waitpid() before all of the changes made by the child process are actually visible in the filesystem, so when we start the next child, the next child might be missing modifications it expected to see. On Wed, Aug 26, 2009 at 10:42 PM, Nico Webertha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
I accidentally fixed the problem by running something like rm -rf .git/svn/ git svn fetch; git merge trunk git merge refs/remotes/origin/trunk git checkout -f HEAD git pull . Not sure what fixed it, but pulling works again. Yay, I guess, but of course I fixed it about 2 minutes before someone asked me to send a dtrace to the git mailing list :-/ On Thu, Aug 27, 2009 at 10:54 AM, Dimitri Glazkovdglaz...@chromium.org wrote: I've had this issue before and found that if I used svn rebase it would sometimes fix it. So I am thinking perhaps instead of git pull, you could attempt doing git fetch first and then git merge? This would do the same thing, except not in atomic op. :DG On Thu, Aug 27, 2009 at 10:49 AM, Nico Webertha...@chromium.org wrote: Didn't help. Oh well, back to my fallback svn client for now. Will create a new git checkout in the new feature. On Thu, Aug 27, 2009 at 9:12 AM, Evan Martine...@chromium.org wrote: Try git gc On Thu, Aug 27, 2009 at 8:27 AM, Nico Webertha...@chromium.org wrote: The pack file truncated theory sounds most likely. Is there any way I could tell git to regenerate the newest N packfiles? On Thu, Aug 27, 2009 at 8:00 AM, Evan Martine...@chromium.org wrote: https://kerneltrap.org/mailarchive/git/2007/7/23/252538 old and maybe obsolete, but has some exposition from Linus On Thu, Aug 27, 2009 at 7:51 AM, Evan Martine...@chromium.org wrote: Aside from basic stuff like running out of disk space, I have no idea what would cause this problem. (It's weird that pread would fail with no such file when its API is to take an open file descriptor.) One workaround might be to try setting this defined, mentioned in the Makefile: # Define NO_PREAD if you have a problem with pread() system call (e.g. # cygwin.dll before v1.5.22). Not exactly sure it's relevant, but from a script that wraps git where this error came up, the author of the script asks are you on OS X? http://groups.google.com/group/repo-discuss/msg/d6b4fd3d8a1677a2 Unfortunately, either Python or Mac OS X is busted. With multiple cores present, we seem to get the result from waitpid() before all of the changes made by the child process are actually visible in the filesystem, so when we start the next child, the next child might be missing modifications it expected to see. On Wed, Aug 26, 2009 at 10:42 PM, Nico Webertha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---
[chromium-dev] Re: Git woes
Git is comprised of billions of tiny orthogonal binaries. When this happened to me the cause was some old git binaries in the path that where being called by others, the version mismatch was silent and caused this error. Have you upgraded to a new version of git recently that might cause such a mismatch? Best regards, Jeremy On Wed, Aug 26, 2009 at 10:42 PM, Nico Weber tha...@chromium.org wrote: Trying to pull: thakis-macbookpro:~/src/chrome-git/src thakis$ git pull remote: Counting objects: 1859, done. remote: Compressing objects: 100% (1267/1267), done. remote: Total 1393 (delta 1087), reused 195 (delta 107) Receiving objects: 100% (1393/1393), 2.57 MiB | 781 KiB/s, done. fatal: cannot pread pack file: No such file or directory fatal: index-pack failed Ideas? The interwebs suggest deleting some file from my .git folder that's not in there. Nico --~--~-~--~~~---~--~~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~--~~~~--~~--~--~---