Commit Graph

7630 Commits

Author SHA1 Message Date
Alexander Neumann 3d2a714b5a Update minio-go library 2016-01-17 18:48:05 +01:00
Alexander Neumann de933a1d48 Rename URI -> Config/Location 2016-01-17 18:48:05 +01:00
Alexander Neumann 566a15285a Add repository location parsing code 2016-01-17 18:48:05 +01:00
Alexander Neumann 43cf95e3c6 Correctly stop the minio server after the tests 2016-01-17 18:48:05 +01:00
Alexander Neumann 0b12ceabe9 Dockerfile: Install go in home dir
This allows cross-compilation with gox with Go < 1.5
2016-01-17 18:48:05 +01:00
Alexander Neumann e96f28c536 Output stderr when minio server failed 2016-01-17 18:48:05 +01:00
Alexander Neumann d5e36bd2f0 Only run minio server for Go >= 1.5.1 2016-01-17 18:48:05 +01:00
Alexander Neumann 34e8f63f77 Increase debug output for minio server 2016-01-17 18:47:24 +01:00
Alexander Neumann 3e422c8776 Add debug output, listen on localhost 2016-01-17 18:47:24 +01:00
Alexander Neumann edfb31f4fe s3: Run integration test with minio server 2016-01-17 18:47:24 +01:00
Alexander Neumann 8562a1bb2f Dockerfile: Also install minio 2016-01-17 18:46:08 +01:00
Alexander Neumann fa7192fdfb CI: save cross-compiled binaries in /tmp 2016-01-17 18:46:08 +01:00
Alexander Neumann c22c0f2706 Add Dockerfile that resembles the Travis environment 2016-01-17 18:46:08 +01:00
Alexander Neumann 5736742c3e s3: Open() creates bucket if it does not exist 2016-01-17 18:46:08 +01:00
Alexander Neumann 248f991ad4 s3: don't remove the bucket on Delete() 2016-01-17 18:46:08 +01:00
Alexander Neumann 55f10eb1c1 Fix s3 test with local minio server instance 2016-01-17 18:46:08 +01:00
Alexander Neumann d0ca118387 Fix usage of the `done` chan 2016-01-17 18:46:08 +01:00
Chris Howey 69a9adc4c3 Use local instance of minio server.
Need to figure out how to have tests automatically start and kill
server.
2016-01-17 18:46:08 +01:00
Chris Howey e2445f4c97 GetPartialObject does not work. 2016-01-17 18:46:08 +01:00
Chris Howey ed2a4ba1d5 Fix s3 backend test 2016-01-17 18:46:08 +01:00
Chris Howey 6d1552af51 Switch s3 library to allow for s3 compatible backends. Fixes #315 2016-01-17 18:46:08 +01:00
Alexander Neumann c969de7fad Merge pull request #390 from restic/fix-travis
Fix travis
2016-01-16 14:39:51 +01:00
Alexander Neumann b8c300e61e Remove run_tests.go from Makefile 2016-01-16 14:37:23 +01:00
Alexander Neumann 2499bbb09d Also specify new `-X` syntax for go1.6 2016-01-16 14:08:13 +01:00
Alexander Neumann 7c70d5c1bd Build toolchain for gox only on older Versions of Go 2016-01-16 13:40:16 +01:00
Alexander Neumann f90381910b Remove Go tip, add 1.6beta2 2016-01-16 13:39:12 +01:00
Alexander Neumann 172c31ff45 Use gotestcover instead of homebrew run_tests.go 2016-01-16 13:32:23 +01:00
Alexander Neumann bbfd1dd0c0 Fix ignore tip build failure 2016-01-16 13:23:45 +01:00
Alexander Neumann 8d71e5d698 Travis CI: Update Go version, add tip 2016-01-16 13:00:28 +01:00
Alexander Neumann 0f69169262 OpenChaos lecture 2016-01-13 20:16:47 +01:00
Alexander Neumann 72bcebbfb1 Remove (broken) sourcegraph and waffle badges 2016-01-07 21:09:32 +01:00
Philipp Serr 0fde09a866 Lock MasterIndex and InFlight store together
fixes: #358
2015-12-28 18:40:43 +01:00
Philipp Serr e7bf936d2b Increase number of chunks and test repetitions 2015-12-28 18:33:28 +01:00
Philipp Serr 3d7f72311a Provoke unreferenced packs using fewer goroutines
TestParallelSaveWithDuplication has been reworked to provoke
unreferenced packs using fewer goroutines than before and create
only one bytes.Reader per blob. This reduces memory usage
significantly.

The following actions have been taken to keep the chance of provoking
unreferenced packs due to #358 high:
 * Interweaved processing of subsequent chunks
 * Delaying each goroutine by a few pseudo-randomly chosen nanoseconds
   (depending on the platform this will most probably only make the os
   yield execution to another thread): together with the interweaved
   processing of subsequent chunks, this ensures a minimalistic delay
   between processing of (some) duplicated chunks
 * Repeating the test 5 times with different seeds

On my test machine, the modified test provoked unreferenced packs 60
times in a row.
2015-12-28 18:33:26 +01:00
Philipp Serr 6a548336ec Add a test concurrently saving duplicated chunks
This commit adds an integration test, that calls Archiver.Save from
many goroutines processing several duplicated chunks concurrently.
The test asserts, that after all chunks have been saved, there are no
unreferenced packs in the repository.

The test has been checked to give the expected results:
 1) Running the test with maxParallel=1 (all chunks are processed
    sequentially) has been verified not to produce any unreferenced
    packs. Consequently the test passes.
 2) Running the test with unbounded parallelism (maxParallel=
    math.MaxInt32) has been verified to produce unreferenced packs
    all the time (at least 25 test runs). Consequently the test fails
    due to #358.

references: #358
2015-12-28 18:33:22 +01:00
Alexander Neumann d3e7766f89 Merge pull request #380 from restic/PKGBUILD-update
Update PKGBUILD to reflect restic official version numbering
2015-12-27 22:07:28 +01:00
Florian Daniel 360193320f Update PKGBUILD to reflect restic official version numbering 2015-12-27 22:05:05 +01:00
Alexander Neumann 1f1b8e16a7 Add Code Quality Badge
Closes #379
2015-12-27 20:35:27 +01:00
Alexander Neumann 3abff7928c Merge pull request #375 from restic/fix-suid
Backup and restore setuid/setgid/sticky bits
2015-12-20 20:45:18 +01:00
Alexander Neumann 2976df2dc6 Call `brew update` before installing 2015-12-20 20:01:13 +01:00
Alexander Neumann f49cb62812 Backup and restore setuid/setgid/sticky bits
A user discovered that restic does not restore setuid/setgid/sticky file
attributes. This commit fixes that. The mode is stored in the Go format
as an uint32: https://golang.org/pkg/os/#FileMode
2015-12-20 19:45:36 +01:00
Alexander Neumann 55d9c5f80c Merge pull request #364 from restic/fix-356
Allow reading all data
2015-12-06 21:55:21 +01:00
Alexander Neumann d1ca986f55 Fix tests 2015-12-06 17:38:51 +01:00
Alexander Neumann 3ac1d0e4d1 add progress 2015-12-06 17:29:31 +01:00
Alexander Neumann 0e66a66bce read packs concurrently 2015-12-06 17:09:06 +01:00
Alexander Neumann 43a23f91a6 checker: add function to read and verify all data 2015-12-02 22:40:36 +01:00
Alexander Neumann 8d229bfd21 Make ReadCloser public 2015-12-02 22:37:58 +01:00
Alexander Neumann 04cd318f6c Merge pull request #362 from restic/improvements
Cleanups
2015-11-30 22:09:24 +01:00
Alexander Neumann 141d400b4a test: improvements 2015-11-29 14:54:20 +01:00
Alexander Neumann b841eb4c54 crypto: check key for validity 2015-11-29 14:54:20 +01:00