Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2015-06-12 14:38:21 -04:00
commit 4ec4562e36
2 changed files with 109 additions and 0 deletions

View file

@ -0,0 +1,74 @@
Hi
When trying to do "make" in Linux x64_64, the process fails with an out-of-memory error. "top" shows that memory consumption reached 16GB during build.
Grateful for any recommendations.
Ciaron
which: no ikiwiki in <snip>
if [ "cabal " = ./Setup ]; then ghc --make Setup; fi
cabal configure
Resolving dependencies...
[ 1 of 31] Compiling Utility.FileSize ( Utility/FileSize.hs, dist/setup/Utility/FileSize.o )
[ 2 of 31] Compiling Utility.PosixFiles ( Utility/PosixFiles.hs, dist/setup/Utility/PosixFiles.o )
[ 3 of 31] Compiling Utility.FileSystemEncoding ( Utility/FileSystemEncoding.hs, dist/setup/Utility/FileSystemEncoding.o )
[ 4 of 31] Compiling Utility.Applicative ( Utility/Applicative.hs, dist/setup/Utility/Applicative.o )
[ 5 of 31] Compiling Utility.Data ( Utility/Data.hs, dist/setup/Utility/Data.o )
[ 6 of 31] Compiling Utility.Monad ( Utility/Monad.hs, dist/setup/Utility/Monad.o )
[ 7 of 31] Compiling Utility.Exception ( Utility/Exception.hs, dist/setup/Utility/Exception.o )
[ 8 of 31] Compiling Utility.Misc ( Utility/Misc.hs, dist/setup/Utility/Misc.o )
[ 9 of 31] Compiling Utility.Tmp ( Utility/Tmp.hs, dist/setup/Utility/Tmp.o )
[10 of 31] Compiling Utility.Env ( Utility/Env.hs, dist/setup/Utility/Env.o )
[11 of 31] Compiling Utility.UserInfo ( Utility/UserInfo.hs, dist/setup/Utility/UserInfo.o )
[12 of 31] Compiling Utility.Path ( Utility/Path.hs, dist/setup/Utility/Path.o )
[13 of 31] Compiling Utility.OSX ( Utility/OSX.hs, dist/setup/Utility/OSX.o )
[14 of 31] Compiling Utility.Process ( Utility/Process.hs, dist/setup/Utility/Process.o )
[15 of 31] Compiling Utility.SafeCommand ( Utility/SafeCommand.hs, dist/setup/Utility/SafeCommand.o )
[16 of 31] Compiling Utility.Directory ( Utility/Directory.hs, dist/setup/Utility/Directory.o )
[17 of 31] Compiling Utility.ExternalSHA ( Utility/ExternalSHA.hs, dist/setup/Utility/ExternalSHA.o )
[18 of 31] Compiling Utility.Network ( Utility/Network.hs, dist/setup/Utility/Network.o )
[19 of 31] Compiling Utility.PartialPrelude ( Utility/PartialPrelude.hs, dist/setup/Utility/PartialPrelude.o )
[20 of 31] Compiling Common ( Common.hs, dist/setup/Common.o )
[21 of 31] Compiling Utility.DottedVersion ( Utility/DottedVersion.hs, dist/setup/Utility/DottedVersion.o )
[22 of 31] Compiling Git.Version ( Git/Version.hs, dist/setup/Git/Version.o )
[23 of 31] Compiling Utility.FreeDesktop ( Utility/FreeDesktop.hs, dist/setup/Utility/FreeDesktop.o )
[24 of 31] Compiling Config.Files ( Config/Files.hs, dist/setup/Config/Files.o )
[25 of 31] Compiling Assistant.Install.AutoStart ( Assistant/Install/AutoStart.hs, dist/setup/Assistant/Install/AutoStart.o )
[26 of 31] Compiling Assistant.Install.Menu ( Assistant/Install/Menu.hs, dist/setup/Assistant/Install/Menu.o )
[27 of 31] Compiling Build.Version ( Build/Version.hs, dist/setup/Build/Version.o )
[28 of 31] Compiling Build.TestConfig ( Build/TestConfig.hs, dist/setup/Build/TestConfig.o )
[29 of 31] Compiling Build.Configure ( Build/Configure.hs, dist/setup/Build/Configure.o )
[30 of 31] Compiling Build.DesktopFile ( Build/DesktopFile.hs, dist/setup/Build/DesktopFile.o )
[31 of 31] Compiling Main ( dist/setup/setup.hs, dist/setup/Main.o )
Linking ./dist/setup/setup ...
checking version... 5.20150612-gf176464
checking UPGRADE_LOCATION... not available
checking git... yes
checking git version... 1.7.9
checking cp -a... yes
checking cp -p... yes
checking cp --preserve=timestamps... yes
checking cp --reflink=auto... no
checking xargs -0... yes
checking rsync... yes
checking curl... yes
checking wget... yes
checking wget supports -q --show-progress... no
checking bup... no
checking nice... yes
checking ionice... yes
checking nocache... no
checking gpg... gpg
checking lsof... lsof
checking git-remote-gcrypt... not available
checking ssh connection caching... no
checking sha1... sha1sum
checking sha256... sha256sum
checking sha512... sha512sum
checking sha224... sha224sum
checking sha384... sha384sum
Configuring git-annex-5.20150528...
setup: out of memory (requested 1048576 bytes)
make: *** [Build/SysConfig.hs] Error 1

View file

@ -0,0 +1,35 @@
Hi,
I have setup a remote git-annex repository (ssh into some machine in our local network) which I will call "common_repo". Multiple contributors will then be cloning this repo into their laptops (I will call "client_repos").
When these client_repos change and do a "git annex sync <common_repo> --content", all the files from their laptops are successfully synchronised. The problem arises when:
(1) CLIENT_A creates somefile.csv
(2) CLIENT_A commits somefile.csv
i.e. git annex add somefile.csv
git commit -a -m "uploaded somefile.csv"
(3) CLIENT_A modifies somefile.csv
(4) CLIENT_A commits modified somefile.csv
i.e. git add somefile.csv
git commit -a -m "updated somefile.csv"
(5) CLIENT_A synchronises with common_repo
i.e. git annex sync <common_repo> --content
If I check the .git/annex/objects of common_repo, I can't seem to find a copy of the unmodified somefile.csv. It only has a copy of the latest somefile.csv.
This is problematic if one client tries to checkout a revision of the project that uses the original somefile.csv.
I learned that I can change the preferred content of git-annex. So, the appropriate preset for common_repo seemed to be "backup". After running the commands in common_repo:
git annex wanted . standard
git annex group . backup
I've done another test of the scenario above, and common_repo is still missing the previous revision of the file!! The preferred file content of common_repo should be "include=* or unused". In my case, the previous version of somefile.csv will probably fall in the "unused" category. But I still cannot find it.
A workaround is using two commands from the client(s):
git annex copy --to <common_repo> --all
git annex sync <common_repo> --content
But I can imagine my users forgetting to run 'copy' and my repo will go to shit over time.
Any ideas why I can't synchronise 'unused' files?