aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/local.mk
diff options
context:
space:
mode:
authorregnat <rg@regnat.ovh>2020-10-20 15:14:02 +0200
committerregnat <rg@regnat.ovh>2020-12-11 20:41:32 +0100
commit3ac9d74eb1de0f696bb0384132f7ecc7d057f9d6 (patch)
tree59ad4e56ef7e20b10d01fb7fd78daf7e9f41c8a1 /src/libstore/local.mk
parent58cdab64acd4807f73768fb32acdde39b501799f (diff)
Rework the db schema for derivation outputs
Add a new table for tracking the derivation output mappings. We used to hijack the `DerivationOutputs` table for that, but (despite its name), it isn't a really good fit: - Its entries depend on the drv being a valid path, making it play badly with garbage collection and preventing us to copy a drv output without copying the whole drv closure too; - It dosen't guaranty that the output path exists; By using a different table, we can experiment with a different schema better suited for tracking the output mappings of CA derivations. (incidentally, this also fixes #4138)
Diffstat (limited to 'src/libstore/local.mk')
-rw-r--r--src/libstore/local.mk4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libstore/local.mk b/src/libstore/local.mk
index dfe1e2cc4..03c4351ac 100644
--- a/src/libstore/local.mk
+++ b/src/libstore/local.mk
@@ -48,7 +48,7 @@ ifneq ($(sandbox_shell),)
libstore_CXXFLAGS += -DSANDBOX_SHELL="\"$(sandbox_shell)\""
endif
-$(d)/local-store.cc: $(d)/schema.sql.gen.hh
+$(d)/local-store.cc: $(d)/schema.sql.gen.hh $(d)/ca-specific-schema.sql.gen.hh
$(d)/build.cc:
@@ -58,7 +58,7 @@ $(d)/build.cc:
@echo ')foo"' >> $@.tmp
@mv $@.tmp $@
-clean-files += $(d)/schema.sql.gen.hh
+clean-files += $(d)/schema.sql.gen.hh $(d)/ca-specific-schema.sql.gen.hh
$(eval $(call install-file-in, $(d)/nix-store.pc, $(prefix)/lib/pkgconfig, 0644))