Subject: bug#42148: guix-1.1.0-13.26611f5 fails to build

From: Ludovic Courtès <[email-masked]>
Date: Thu, 02 Jul 2020 00:11:55 +0200

Hi,

Mathieu Othacehe <[email-masked]> skribis:

> There are two test failures on berlin during guix-1.1.0-13.26611f5
> tests. Log attached!

The actual build failure concerns code that hasn’t change in recent
years:

--8<---------------cut here---------------start------------->8---
test-name: filtered-port, file
location: /tmp/guix-build-guix-1.1.0-13.26611f5.drv-0/source/tests/utils.scm:146
source:
+ (test-assert
+   "filtered-port, file"
+   (let* ((file (search-path %load-path "guix.scm"))
+          (input (open-file file "r0b")))
+     (let*-values
+       (((compressed pids1)
+         (filtered-port `(,%gzip "-c" "--fast") input))
+        ((decompressed pids2)
+         (filtered-port `(,%gzip "-d") compressed)))
+       (and (every (compose zero? cdr waitpid)
+                   (append pids1 pids2))
+            (equal?
+              (get-bytevector-all decompressed)
+              (call-with-input-file file get-bytevector-all))))))
actual-value: #f
result: FAIL
--8<---------------cut here---------------end--------------->8---

However, the log also shows that something’s wrong with time on that
machine:

--8<---------------cut here---------------start------------->8---
starting phase `check'
make: guix/store/schema.sql: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make: Warning: File 'guix/store/schema.sql' has modification time 15586324043 s in the future
  GEN      nix/libstore/schema.sql.hh
make  check-recursive
make[1]: Entering directory '/tmp/guix-build-guix-1.1.0-13.26611f5.drv-0/source'
Making check in po/guix
make[2]: Entering directory '/tmp/guix-build-guix-1.1.0-13.26611f5.drv-0/source/po/guix'
make[2]: Leaving directory '/tmp/guix-build-guix-1.1.0-13.26611f5.drv-0/source/po/guix'
Making check in po/packages
make[2]: Entering directory '/tmp/guix-build-guix-1.1.0-13.26611f5.drv-0/source/po/packages'
make[2]: Leaving directory '/tmp/guix-build-guix-1.1.0-13.26611f5.drv-0/source/po/packages'
make[2]: Entering directory '/tmp/guix-build-guix-1.1.0-13.26611f5.drv-0/source'
make[2]: guix/store/schema.sql: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: Warning: File 'guix/store/schema.sql' has modification time 15586324043 s in the future
  GEN      nix/libstore/schema.sql.hh
  CXX      nix/libstore/libstore_a-local-store.o
  AR       libstore.a
ar: `u' modifier ignored since `D' is the default (see `U')
  CXXLD    guix-daemon
make[2]: guix/base16.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: guix/base32.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: guix/cpio.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: guix/pki.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: guix/memoization.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: guix/sets.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: guix/monad-repl.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999
make[2]: guix/glob.scm: Timestamp out of range; substituting 2514-05-30 01:53:03.999999999

[...]

Compiling Scheme modules...
[  1%] LOAD     guix/base16.scm
[  1%] LOAD     guix/base32.scm
[  2%] LOAD     guix/cpio.scm
[  3%] LOAD     guix/pki.scm
[  3%] LOAD     guix/memoization.scm
[  4%] LOAD     guix/sets.scm
[  5%] LOAD     guix/monad-repl.scm
[  5%] LOAD     guix/glob.scm
[  6%] LOAD     guix/workers.scm
[  7%] LOAD     guix/zlib.scm
[  7%] LOAD     guix/build-system.scm
[  8%] LOAD     guix/build-system/android-ndk.scm
--8<---------------cut here---------------end--------------->8---

I suspect that weird timestamp issue could well explain many things.

Ludo’.