Eelco Dolstra
9cda616949
* The database needs a trigger to get rid of self-references to
...
prevent a foreign key constraint violation on the Refs table when
deleting a path.
2010-02-22 14:18:55 +00:00
Eelco Dolstra
c4d388add4
* Get derivation outputs from the database instead of the .drv file,
...
which requires more I/O.
2010-02-22 12:44:36 +00:00
Eelco Dolstra
103cfee056
* Revert r19650 (implement gc-keep-outputs by looking for derivations
...
with the same name as the output) and instead use the
DerivationOutputs table in the database, which is the correct way to
to do things.
2010-02-22 11:44:17 +00:00
Eelco Dolstra
299ff64812
* Put the derivation outputs in the database. This is useful for the
...
garbage collector.
2010-02-22 11:15:50 +00:00
Eelco Dolstra
1930570ad9
* Foreign key support in SQLite is not a persistent setting, so enable
...
it at startup.
* Implement negative caching. Now `make check' passes.
2010-02-19 17:15:22 +00:00
Eelco Dolstra
9c9a88e9e2
* Implement more stuff.
2010-02-19 16:43:25 +00:00
Eelco Dolstra
762cee72cc
* Implement registerValidPath().
2010-02-19 16:04:51 +00:00
Eelco Dolstra
268f9aaf28
* Implemented queryValidPaths() and verifyStore().
2010-02-18 16:51:27 +00:00
Eelco Dolstra
836e5b6f57
* Implemented queryReferrers().
2010-02-18 16:21:59 +00:00
Eelco Dolstra
77cb9e3fb1
* Implement queryPathInfo().
2010-02-18 15:52:57 +00:00
Eelco Dolstra
885e22b16e
* Implement isValidPath().
2010-02-18 15:11:08 +00:00
Eelco Dolstra
cfb09e0fad
* Automatically abort transactions if they go out of scope without
...
committing.
2010-02-18 14:40:07 +00:00
Eelco Dolstra
e0305bb7a8
* Some wrapper objects to ensure that SQLite objects are properly
...
destroyed.
2010-02-18 14:30:42 +00:00
Eelco Dolstra
a053d2d8e5
* Add the deriver to the ValidPaths table. In principle we could now
...
store all the derivers of a path efficiently. But that opens a big
can of worms with respect to garbage collector semantics.
2010-02-18 13:48:18 +00:00
Eelco Dolstra
dbddac0fe9
* Assign an integer id to every row in the ValidPaths table in order
...
to make the Refs table more space-efficient. For instance, this
reduces the size of the database on my laptop from 93 MiB to 18
MiB. (It was 72 MiB with the old schema on an ext3 disk with a 1
KiB block size.)
2010-02-18 13:40:46 +00:00
Eelco Dolstra
c1a07f9445
* Convert the Nix database to SQLite.
2010-02-18 13:16:59 +00:00
Eelco Dolstra
eaaa13ce47
* Experimental branch for using SQLite to store the Nix database.
2010-02-18 13:14:51 +00:00
Eelco Dolstra
68e55cd9da
* Since Hydra now escapes +',
=' and `?' to %NN in URIs,
...
nix-prefetch-url should unescape them, because `%' is not a valid
character in store path names.
2010-02-16 00:10:39 +00:00
Eelco Dolstra
3b3e1025c3
* Typo. Reported by Peter Koppstein.
2010-02-12 10:50:30 +00:00
Ludovic Courtès
20186a4079
Don't rely on `PATH_MAX' on GNU.
2010-02-10 15:55:50 +00:00
Ludovic Courtès
d0bf4adb1f
Add `.gitignore'.
2010-02-10 15:55:46 +00:00
Eelco Dolstra
e08dbff9a8
* Fix a broken link (reported by Bjorn Buckwalter).
2010-02-05 10:17:13 +00:00
Eelco Dolstra
e1e91a3731
* Bump.
2010-02-04 15:46:04 +00:00
Eelco Dolstra
817f4f7908
* Grmbl. Timing-sensitive tests are evil.
2010-02-04 14:43:43 +00:00
Eelco Dolstra
f36b7e7579
2010-02-04 14:00:47 +00:00
Eelco Dolstra
719cebcac2
* "Fix" incorrect help message.
2010-02-04 09:38:09 +00:00
Eelco Dolstra
443673620d
* Don't use ssh's -f flag since it leads to lots of lingering ssh
...
processes.
2010-02-04 02:38:40 +00:00
Eelco Dolstra
7ec5a65925
* Doh! The scope of $slotLock should extend to the end of the script,
...
because otherwise the lock will be released at the end of the while
loop.
2010-02-04 02:18:29 +00:00
Eelco Dolstra
c9b2d80bcd
* Typo.
2010-02-04 02:05:34 +00:00
Eelco Dolstra
3cfe65e516
* Doh! Calling `system' in an END block causes the exit status in $?
...
to be changed to 0.
2010-02-04 02:05:22 +00:00
Eelco Dolstra
e51a276907
* Remove the `cat' calls when not using --gzip.
2010-02-04 01:39:23 +00:00
Eelco Dolstra
408913bbaf
* Revert r19796 for now.
2010-02-04 00:12:57 +00:00
Eelco Dolstra
4e17be7981
* Revert r19797, and use a simpler solution: just don't monitor build
...
hooks for silence. It's unnecessary because the remote nix-store
command is already monitoring the real build.
2010-02-03 21:38:41 +00:00
Eelco Dolstra
f859a8d3c3
* While waiting for a lock, print a sign of life every 5 minutes.
...
This prevents remote builders from being killed by the
`max-silent-time' inactivity monitor while they are waiting for a
long garbage collection to finish. This happens fairly often in the
Hydra build farm.
2010-02-03 21:22:57 +00:00
Eelco Dolstra
c45de33c67
* Respect @sysconfdir@.
2010-02-03 21:13:37 +00:00
Eelco Dolstra
d0c32dc135
* In the build hook, if connecting to a machine fails, try the other
...
machines of the right type (if available). This makes the build
farm more robust to failures.
2010-02-03 20:35:37 +00:00
Eelco Dolstra
f56a039775
* Use SSH connection sharing in the remote build script.
...
* Removed the Cygwin password hack since the problem is apparently
fixed in Visual Studio.
2010-02-03 20:12:18 +00:00
Eelco Dolstra
bc1e478db1
* nix-copy-closure: start only one SSH connection to the server, or
...
recycle an already existing connection (using OpenSSH's connection
sharing feature).
2010-02-03 15:34:52 +00:00
Eelco Dolstra
4d8a85b8f5
* Updated the release notes.
2010-02-03 11:00:35 +00:00
Eelco Dolstra
3ce5f07793
* Ugly hack to make `nix-channel' work on Cygwin.
2010-02-02 17:01:16 +00:00
Eelco Dolstra
e839802720
* Don't do a chdir to $tmpDir. It's not necessary, and Windows doesn't
...
support deleting the current directory.
2010-02-02 15:29:18 +00:00
Eelco Dolstra
4bbbe25802
* Remove most Cygwin-specific code. Cygwin 1.7 implements advisory
...
POSIX locks, and simulates Unix-style file deletion semantics
sufficiently. Note that this means that Nix won't work on Cygwin
1.5 anymore.
2010-02-02 15:28:36 +00:00
Eelco Dolstra
2723d9b56e
* If fdatasync() isn't available, use fsync().
2010-02-02 11:57:49 +00:00
Eelco Dolstra
07ffdc2862
* Added an option "fsync-metadata" to fsync() changes to
...
/nix/var/nix/db.
* Removed the function writeStringToFile since it does (almost) the
same thing as writeFile.
2010-01-29 12:22:58 +00:00
Eelco Dolstra
ad529fb89f
* Don't consider a store path valid if its info file exists but is
...
zero bytes long. That makes Nix more robust in case of crashes
(especially on ext4).
2010-01-29 11:53:58 +00:00
Eelco Dolstra
fdcaf37361
* Made `nix-store -qR --include-outputs' much faster if there are
...
multiple paths specified on the command line (from O(n * m) to O(n +
m), where n is the number of arguments and m is the size of the
closure).
2010-01-25 17:18:44 +00:00
Eelco Dolstra
50e34891f0
* Disable gzip compression in build-remote.pl because it puts too much
...
load on the Hydra build farm (where it's unnecessary anyway because
it has a fast connection to the build machines). In any case,
compression can be enabled by using the `-C' option to ssh.
2010-01-25 16:14:45 +00:00
Eelco Dolstra
5388944e8d
* Make the garbage collector do the right thing when `gc-keep-outputs'
...
is enabled by not depending on the deriver.
2010-01-25 16:04:32 +00:00
Eelco Dolstra
f0c0277970
* On startup, set the default SIGCHLD handler. This is so that Nix
...
works correctly in weird environments where the SIGCHLD handler is
set to "ignore".
2010-01-12 12:22:38 +00:00
Eelco Dolstra
ef92a14bfe
* Include config.h before the C library headers, because it defines
...
_FILE_OFFSET_BITS=64. Without it, functions like stat() fail on
large file sizes. This happened with a Nix store on squashfs:
$ nix-store --dump /tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds > /dev/null
error: getting attributes of path `/tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds': Value too large for defined data type
$ stat /tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds
File: `/tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds'
Size: 0 Blocks: 36028797018963968 IO Block: 1024 regular empty file
(This is a bug in squashfs or mksquashfs, but it shouldn't cause Nix
to fail.)
2009-12-17 14:12:44 +00:00