about summary refs log tree commit diff
path: root/tests/parallel.sh
AgeCommit message (Collapse)AuthorFilesLines
2011-10-10 * Refactoring: remove unnecessary variables from the tests.Eelco Dolstra1-3/+3
2010-02-04 * Grmbl. Timing-sensitive tests are evil.Eelco Dolstra1-1/+1
2009-03-30 * Make the poll interval configurable.Eelco Dolstra1-1/+1
2009-03-25 * Removed the locking.sh test; it's redundant because of the extendedEelco Dolstra1-1/+10
parallel.sh test. Also, don't call multiple nix-builds in parallel, since they can race creating .nix-build-tmp-derivation.
2009-03-23 * Make this test a bit more robust. It's still timing dependentEelco Dolstra1-6/+8
though.
2009-03-22 * Test case (currently fails): multiple Nix builds shouldn't blockEelco Dolstra1-2/+34
waiting on the same lock when there are other builds that can be done.
2009-03-18 * Acquire the locks on the output paths before trying to run the buildEelco Dolstra1-1/+1
hook. This fixes a problem with log files being partially or completely filled with 0's because another nix-store process truncates the log file. It should also be more efficient.
2009-03-18 * Clean up some tests (use nix-build where appropriate).Eelco Dolstra1-4/+2
2006-03-01 * Simplification.Eelco Dolstra1-2/+2
2006-03-01 * Make it easy to run individual tests from the command line.Eelco Dolstra1-0/+2
2005-02-09 * Propagate the deriver of a path through the substitute mechanism.Eelco Dolstra1-3/+3
* Removed some dead code (successor stuff) from nix-push. * Updated terminology in the tests (store expr -> drv path). * Check that the deriver is set properly in the tests.
2005-01-25 * In nix-store: change `--build' back to `--realise'. Also broughtEelco Dolstra1-1/+1
back the query flag `--force-realise'. * Fixed some of the tests.
2004-05-13 * The build hooks used to implement distributed builds can now be runEelco Dolstra1-1/+1
in parallel. Hooks are more efficient: locks on output paths are only acquired when the hook says that it is willing to accept a build job. Hooks now work in two phases. First, they should first tell Nix whether they are willing to accept a job. Nix guarantuees that no two hooks will ever be in the first phase at the same time (this simplifies the implementation of hooks, since they don't have to perform locking (?)). Second, if they accept a job, they are then responsible for building it (on the remote system), and copying the result back. These can be run in parallel with other hooks and locally executed jobs. The implementation is a bit messy right now, though. * The directory `distributed' shows a (hacky) example of a hook that distributes build jobs over a set of machines listed in a configuration file.
2004-05-12 * Use `-j0'.Eelco Dolstra1-8/+1
2004-05-11 * True parallel builds. Nix can now run as many build jobs inEelco Dolstra1-7/+7
parallel as possible (similar to GNU Make's `-j' switch). This is useful on SMP systems, but it is especially useful for doing builds on multiple machines. The idea is that a large derivation is initiated on one master machine, which then distributes sub-derivations to any number of slave machines. This should not happen synchronously or in lock-step, so the master must be capable of dealing with multiple parallel build jobs. We now have the infrastructure to support this. TODO: substitutes are currently broken.
2004-05-04 * A test to verify that Nix executes build jobs in parallel, ifEelco Dolstra1-0/+20
possible. This test fails right now because this hasn't been implemented right now. Yes, I'm doing Test-Driven Development! ;-)