hasura / pg-client-hs

A low level Haskell library to connect to postgres

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tests fail on aarch64-linux only

sternenseemann opened this issue · comments

The following test failure is reproducible on aarch64-linux only, x86_64-{darwin,linux} work fine:

setupCompilerEnvironmentPhase
Build with /nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2.
unpacking sources
unpacking source archive /nix/store/8z268f7myv20bss51kbjz4nqv3dnpi2b-pg-client-hs-09b40ad
source root is pg-client-hs-09b40ad
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/build/tmp.7ThxYzevqk/setup-package.conf.d -j2 +RTS -A64M -RTS -threaded -rtsopts
[1 of 1] Compiling Main             ( Setup.hs, /build/tmp.7ThxYzevqk/Main.o )
Linking Setup ...
updateAutotoolsGnuConfigScriptsPhase
configuring
configureFlags: --verbose --prefix=/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0 --libdir=$prefix/lib/$compiler --libsubdir=$abi/$libname --docdir=/nix/store/f0w8ga14ravzvr6ivbmfrfhcj4axnhms-pg-client-0.1.0-doc/share/doc/pg-client-0.1.0 --with-gcc=gcc --package-db=/build/tmp.7ThxYzevqk/package.conf.d --ghc-options=-j2 +RTS -A64M -RTS --disable-split-objs --disable-library-profiling --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --disable-benchmarks --enable-library-vanilla --disable-library-for-ghci --ghc-option=-split-sections --ghc-options=-haddock --extra-lib-dirs=/nix/store/2y4hnw5zc2mjz9kc61n3pdgr35rc7r2s-ncurses-6.3-p20220507/lib --extra-lib-dirs=/nix/store/22nmbnvd1kaps6slf0i2zim9g246maqi-libffi-3.4.2/lib --extra-lib-dirs=/nix/store/qs9vwykjyl0zkj1png425z2vdjacjf8q-gmp-with-cxx-6.2.1/lib --extra-include-dirs=/nix/store/wk01kpg1yixx1n28c03jnk95hdrsfkjj-postgresql-14.3/include --extra-lib-dirs=/nix/store/wk01kpg1yixx1n28c03jnk95hdrsfkjj-postgresql-14.3/lib --extra-lib-dirs=/nix/store/basbih04n8h9frhsnxq5riqnsb6n1lbh-postgresql-14.3-lib/lib --extra-include-dirs=/nix/store/0lbfphkl23plja7wc0nf1hz16dxaxf09-krb5-1.19.3-dev/include --extra-lib-dirs=/nix/store/0lbfphkl23plja7wc0nf1hz16dxaxf09-krb5-1.19.3-dev/lib --extra-lib-dirs=/nix/store/brdlbpw0hr00r5irj9m63kg8z0giwbdd-krb5-1.19.3/lib --extra-include-dirs=/nix/store/zc28kj0f04kzs3mzpqh43x1yd6bwmyq4-openssl-1.1.1o-dev/include --extra-lib-dirs=/nix/store/zc28kj0f04kzs3mzpqh43x1yd6bwmyq4-openssl-1.1.1o-dev/lib --extra-lib-dirs=/nix/store/29nhvydzr4wc7gmvbahxyv7jaaykvz01-openssl-1.1.1o/lib --extra-lib-dirs=/nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2/lib
Using Parsec parser
Configuring pg-client-0.1.0...
Dependency aeson >=1.0: using aeson-2.0.3.0
Dependency aeson-casing >=0.1: using aeson-casing-0.2.0.0
Dependency async: using async-2.2.4
Dependency attoparsec >=0.13: using attoparsec-0.14.4
Dependency base >=4.7 && <5: using base-4.15.1.0
Dependency bytestring >=0.10: using bytestring-0.10.12.1
Dependency ekg-core: using ekg-core-0.1.1.7
Dependency hashable >=1.2: using hashable-1.3.5.0
Dependency hashtables: using hashtables-1.2.4.2
Dependency mmorph: using mmorph-1.1.5
Dependency monad-control >=1.0: using monad-control-1.0.3.1
Dependency mtl: using mtl-2.2.2
Dependency postgresql-binary: using postgresql-binary-0.12.4.3
Dependency postgresql-libpq: using postgresql-libpq-0.9.4.3
Dependency resource-pool: using resource-pool-0.2.3.2
Dependency retry: using retry-0.9.2.1
Dependency safe-exceptions: using safe-exceptions-0.1.7.3
Dependency scientific >=0.3: using scientific-0.3.7.0
Dependency template-haskell >=2.11: using template-haskell-2.17.0.0
Dependency text >=1.2: using text-1.2.5.0
Dependency text-builder >=0.6: using text-builder-0.6.6.5
Dependency time >=1.6: using time-1.9.3
Dependency transformers-base >=0.4: using transformers-base-0.4.6
Dependency uuid >=1.3: using uuid-1.3.15
Dependency vector: using vector-0.12.3.1
Dependency async: using async-2.2.4
Dependency base: using base-4.15.1.0
Dependency bytestring >=0.10: using bytestring-0.10.12.1
Dependency hspec: using hspec-2.8.5
Dependency mtl: using mtl-2.2.2
Dependency pg-client: using pg-client-0.1.0
Dependency safe-exceptions: using safe-exceptions-0.1.7.3
Dependency time: using time-1.9.3
Source component graph:
    component lib
    component test:pg-client-test dependency lib
Configured component graph:
    component pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5
        include aeson-2.0.3.0-HlWJjVNsI9B9POFOQBJXQw
        include aeson-casing-0.2.0.0-64kf2mgJLev5kPeui76S12
        include async-2.2.4-HFnp0Xo7exAFQZwnjP1Pyo
        include attoparsec-0.14.4-HgbM2nudp62JB5AxsdB9c8
        include base-4.15.1.0
        include bytestring-0.10.12.1
        include ekg-core-0.1.1.7-258RkQNdFPYAz7kphOPn0Y
        include hashable-1.3.5.0-Hd8HSYZ7DN8KsO4HNlPmYP
        include hashtables-1.2.4.2-8gddbm0tdyRBgtwQiTgsLv
        include mmorph-1.1.5-IuhNda9BJSg4CVkvkcLZwI
        include monad-control-1.0.3.1-500XYM0gLRF7zz1JG0emfK
        include mtl-2.2.2
        include postgresql-binary-0.12.4.3-5UMX8UtEO3N2tiJIwGUN3m
        include postgresql-libpq-0.9.4.3-JhS2GZm4uXT7HcgexK43f1
        include resource-pool-0.2.3.2-94fL8QDiTAu3yHsgtZOupk
        include retry-0.9.2.1-DIHIFXlCgoaBk10FfQmWf3
        include safe-exceptions-0.1.7.3-BjEtVJLxEjC8I1WqE9w8uD
        include scientific-0.3.7.0-154DBoczNiz2TSCILPLqWw
        include template-haskell-2.17.0.0
        include text-1.2.5.0
        include text-builder-0.6.6.5-4nLJQsJy9w4WewNBKdbiP
        include time-1.9.3
        include transformers-base-0.4.6-E9t57wyMBsZKeV1D8h4qUj
        include uuid-1.3.15-4sFjKwH5QYypDWFPda1Wc
        include vector-0.12.3.1-TXkE6leK98EdYcmdk29JF
    component pg-client-0.1.0-T1M4mt41s72rS6AZWP6hJ-pg-client-test
        include async-2.2.4-HFnp0Xo7exAFQZwnjP1Pyo
        include base-4.15.1.0
        include bytestring-0.10.12.1
        include hspec-2.8.5-15yd26Khcrc433s3iLylfP
        include mtl-2.2.2
        include pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5
        include safe-exceptions-0.1.7.3-BjEtVJLxEjC8I1WqE9w8uD
        include time-1.9.3
Linked component graph:
    unit pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5
        include aeson-2.0.3.0-HlWJjVNsI9B9POFOQBJXQw
        include aeson-casing-0.2.0.0-64kf2mgJLev5kPeui76S12
        include async-2.2.4-HFnp0Xo7exAFQZwnjP1Pyo
        include attoparsec-0.14.4-HgbM2nudp62JB5AxsdB9c8
        include base-4.15.1.0
        include bytestring-0.10.12.1
        include ekg-core-0.1.1.7-258RkQNdFPYAz7kphOPn0Y
        include hashable-1.3.5.0-Hd8HSYZ7DN8KsO4HNlPmYP
        include hashtables-1.2.4.2-8gddbm0tdyRBgtwQiTgsLv
        include mmorph-1.1.5-IuhNda9BJSg4CVkvkcLZwI
        include monad-control-1.0.3.1-500XYM0gLRF7zz1JG0emfK
        include mtl-2.2.2
        include postgresql-binary-0.12.4.3-5UMX8UtEO3N2tiJIwGUN3m
        include postgresql-libpq-0.9.4.3-JhS2GZm4uXT7HcgexK43f1
        include resource-pool-0.2.3.2-94fL8QDiTAu3yHsgtZOupk
        include retry-0.9.2.1-DIHIFXlCgoaBk10FfQmWf3
        include safe-exceptions-0.1.7.3-BjEtVJLxEjC8I1WqE9w8uD
        include scientific-0.3.7.0-154DBoczNiz2TSCILPLqWw
        include template-haskell-2.17.0.0
        include text-1.2.5.0
        include text-builder-0.6.6.5-4nLJQsJy9w4WewNBKdbiP
        include time-1.9.3
        include transformers-base-0.4.6-E9t57wyMBsZKeV1D8h4qUj
        include uuid-1.3.15-4sFjKwH5QYypDWFPda1Wc
        include vector-0.12.3.1-TXkE6leK98EdYcmdk29JF
        Control.Concurrent.Interrupt=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Control.Concurrent.Interrupt,Database.PG.Query=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Database.PG.Query,Database.PG.Query.Class=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Database.PG.Query.Class,Database.PG.Query.Connection=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Database.PG.Query.Connection,Database.PG.Query.Listen=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Database.PG.Query.Listen,Database.PG.Query.PTI=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Database.PG.Query.PTI,Database.PG.Query.Pool=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Database.PG.Query.Pool,Database.PG.Query.Transaction=pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5:Database.PG.Query.Transaction
    unit pg-client-0.1.0-T1M4mt41s72rS6AZWP6hJ-pg-client-test
        include async-2.2.4-HFnp0Xo7exAFQZwnjP1Pyo
        include base-4.15.1.0
        include bytestring-0.10.12.1
        include hspec-2.8.5-15yd26Khcrc433s3iLylfP
        include mtl-2.2.2
        include pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5
        include safe-exceptions-0.1.7.3-BjEtVJLxEjC8I1WqE9w8uD
        include time-1.9.3
Ready component graph:
    definite pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5
        depends aeson-2.0.3.0-HlWJjVNsI9B9POFOQBJXQw
        depends aeson-casing-0.2.0.0-64kf2mgJLev5kPeui76S12
        depends async-2.2.4-HFnp0Xo7exAFQZwnjP1Pyo
        depends attoparsec-0.14.4-HgbM2nudp62JB5AxsdB9c8
        depends base-4.15.1.0
        depends bytestring-0.10.12.1
        depends ekg-core-0.1.1.7-258RkQNdFPYAz7kphOPn0Y
        depends hashable-1.3.5.0-Hd8HSYZ7DN8KsO4HNlPmYP
        depends hashtables-1.2.4.2-8gddbm0tdyRBgtwQiTgsLv
        depends mmorph-1.1.5-IuhNda9BJSg4CVkvkcLZwI
        depends monad-control-1.0.3.1-500XYM0gLRF7zz1JG0emfK
        depends mtl-2.2.2
        depends postgresql-binary-0.12.4.3-5UMX8UtEO3N2tiJIwGUN3m
        depends postgresql-libpq-0.9.4.3-JhS2GZm4uXT7HcgexK43f1
        depends resource-pool-0.2.3.2-94fL8QDiTAu3yHsgtZOupk
        depends retry-0.9.2.1-DIHIFXlCgoaBk10FfQmWf3
        depends safe-exceptions-0.1.7.3-BjEtVJLxEjC8I1WqE9w8uD
        depends scientific-0.3.7.0-154DBoczNiz2TSCILPLqWw
        depends template-haskell-2.17.0.0
        depends text-1.2.5.0
        depends text-builder-0.6.6.5-4nLJQsJy9w4WewNBKdbiP
        depends time-1.9.3
        depends transformers-base-0.4.6-E9t57wyMBsZKeV1D8h4qUj
        depends uuid-1.3.15-4sFjKwH5QYypDWFPda1Wc
        depends vector-0.12.3.1-TXkE6leK98EdYcmdk29JF
    definite pg-client-0.1.0-T1M4mt41s72rS6AZWP6hJ-pg-client-test
        depends async-2.2.4-HFnp0Xo7exAFQZwnjP1Pyo
        depends base-4.15.1.0
        depends bytestring-0.10.12.1
        depends hspec-2.8.5-15yd26Khcrc433s3iLylfP
        depends mtl-2.2.2
        depends pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5
        depends safe-exceptions-0.1.7.3-BjEtVJLxEjC8I1WqE9w8uD
        depends time-1.9.3
Using Cabal-3.4.1.0 compiled by ghc-9.0
Using compiler: ghc-9.0.2
Using install prefix:
/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0
Executables installed in:
/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0/bin
Libraries installed in:
/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0/lib/ghc-9.0.2/aarch64-linux-ghc-9.0.2/pg-client-0.1.0-FOQSmx9HxFv228TYdMBDd5
Dynamic Libraries installed in:
/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0/lib/ghc-9.0.2/aarch64-linux-ghc-9.0.2
Private executables installed in:
/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0/libexec/aarch64-linux-ghc-9.0.2/pg-client-0.1.0
Data files installed in:
/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0/share/aarch64-linux-ghc-9.0.2/pg-client-0.1.0
Documentation installed in:
/nix/store/f0w8ga14ravzvr6ivbmfrfhcj4axnhms-pg-client-0.1.0-doc/share/doc/pg-client-0.1.0
Configuration files installed in:
/nix/store/b60bn22p2hzm8d58a0iicd010i13swlz-pg-client-0.1.0/etc
No alex found
Using ar found on system at:
/nix/store/qmssamvzf84d1qn1p691999sp0z1x70r-binutils-2.38/bin/ar
No c2hs found
No cpphs found
No doctest found
Using gcc version 9.3.0 given by user at:
/nix/store/s9b2r9kfpbjh9ppk9sqzs9avv11cnq0h-gcc-wrapper-9.3.0/bin/gcc
Using ghc version 9.0.2 found on system at:
/nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2/bin/ghc
Using ghc-pkg version 9.0.2 found on system at:
/nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2/bin/ghc-pkg
No ghcjs found
No ghcjs-pkg found
No greencard found
Using haddock version 2.25.1 found on system at:
/nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2/bin/haddock
No happy found
Using haskell-suite found on system at: haskell-suite-dummy-location
Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
No hmake found
Using hpc version 0.68 found on system at:
/nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2/bin/hpc
Using hsc2hs version 0.68.7 found on system at:
/nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2/bin/hsc2hs
Using hscolour version 1.24 found on system at:
/nix/store/zs398d95z0rfday6fs8yvxc7b4qbkrrh-hscolour-1.24.4/bin/HsColour
No jhc found
Using ld found on system at:
/nix/store/vbg63jpcmbdpqqhkjy5x34zi6h6p2hky-binutils-wrapper-2.38/bin/ld.gold
No pkg-config found
Using runghc version 9.0.2 found on system at:
/nix/store/5sj9zryfgnnd0fp4j8bvf4qrsfsbwzsl-ghc-9.0.2/bin/runghc
Using strip version 2.38 found on system at:
/nix/store/s9b2r9kfpbjh9ppk9sqzs9avv11cnq0h-gcc-wrapper-9.3.0/bin/strip
Using tar found on system at:
/nix/store/8hsdp0myda33jfpvyrywyw3pagf6cyhm-gnutar-1.34/bin/tar
No uhc found
building
Preprocessing library for pg-client-0.1.0..
Building library for pg-client-0.1.0..
[1 of 8] Compiling Control.Concurrent.Interrupt ( src/Control/Concurrent/Interrupt.hs, dist/build/Control/Concurrent/Interrupt.o, dist/build/Control/Concurrent/Interrupt.dyn_o )
[2 of 8] Compiling Database.PG.Query.Connection ( src/Database/PG/Query/Connection.hs, dist/build/Database/PG/Query/Connection.o, dist/build/Database/PG/Query/Connection.dyn_o )
[3 of 8] Compiling Database.PG.Query.PTI ( src/Database/PG/Query/PTI.hs, dist/build/Database/PG/Query/PTI.o, dist/build/Database/PG/Query/PTI.dyn_o )
[4 of 8] Compiling Database.PG.Query.Class ( src/Database/PG/Query/Class.hs, dist/build/Database/PG/Query/Class.o, dist/build/Database/PG/Query/Class.dyn_o )
[5 of 8] Compiling Database.PG.Query.Transaction ( src/Database/PG/Query/Transaction.hs, dist/build/Database/PG/Query/Transaction.o, dist/build/Database/PG/Query/Transaction.dyn_o )
[6 of 8] Compiling Database.PG.Query.Pool ( src/Database/PG/Query/Pool.hs, dist/build/Database/PG/Query/Pool.o, dist/build/Database/PG/Query/Pool.dyn_o )
[7 of 8] Compiling Database.PG.Query.Listen ( src/Database/PG/Query/Listen.hs, dist/build/Database/PG/Query/Listen.o, dist/build/Database/PG/Query/Listen.dyn_o )
[8 of 8] Compiling Database.PG.Query ( src/Database/PG/Query.hs, dist/build/Database/PG/Query.o, dist/build/Database/PG/Query.dyn_o )
Preprocessing test suite 'pg-client-test' for pg-client-0.1.0..
Building test suite 'pg-client-test' for pg-client-0.1.0..
[1 of 3] Compiling Interrupt        ( test/Interrupt.hs, dist/build/pg-client-test/pg-client-test-tmp/Interrupt.o )
[2 of 3] Compiling Timeout          ( test/Timeout.hs, dist/build/pg-client-test/pg-client-test-tmp/Timeout.o )
[3 of 3] Compiling Main             ( test/Spec.hs, dist/build/pg-client-test/pg-client-test-tmp/Main.o )
Linking dist/build/pg-client-test/pg-client-test ...
buildPhase completed in 53 seconds
running tests
initializing postgresql
The files belonging to this database system will be owned by user "nixbld".
This user must also own the server process.

The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

creating directory /build/postgresql ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok

initdb: warning: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    /nix/store/wk01kpg1yixx1n28c03jnk95hdrsfkjj-postgresql-14.3/bin/pg_ctl -D /build/postgresql -l logfile start

starting postgresql
waiting for server to start....2022-06-05 08:16:39.521 UTC [884] LOG:  starting PostgreSQL 14.3 on aarch64-unknown-linux-gnu, compiled by gcc (GCC) 9.3.0, 64-bit
2022-06-05 08:16:39.521 UTC [884] LOG:  listening on Unix socket "/build/run/postgresql/.s.PGSQL.5432"
2022-06-05 08:16:39.522 UTC [885] LOG:  database system was shut down at 2022-06-05 08:16:39 UTC
2022-06-05 08:16:39.525 UTC [884] LOG:  database system is ready to accept connections
 done
server started
setting up postgresql
CREATE ROLE
CREATE DATABASE
Running 1 test suites...
Test suite pg-client-test: RUNNING...
2022-06-05 08:16:56.065 UTC [1080] ERROR:  canceling statement due to user request
2022-06-05 08:16:56.065 UTC [1080] CONTEXT:  SQL function "sleepy" statement 1
2022-06-05 08:16:56.065 UTC [1080] STATEMENT:  INSERT INTO test_timeout VALUES (sleepy($1))

acquiring connections
  acquire a single available resource
  error when no connections available
  release and acquire works correctly
  release and acquire works correctly
  time out works correctly
without interrupt
  logging etc works
  cancellable sleep is like sleep without cancelling FAILED [1]
  uninterruptible sleep doesn't time out
interruptOnAsyncException
  behaves like baseline without cancelling
  allows interrupting a blocking action FAILED [2]
  waits for the thread and bubbles the exception if cancel only throws
  bubbles an exception that occurs before cancelling
  bubbles an exception that occurs after cancelling
slow insert
  inserts a row successfully if not interrupted
  is interrupted late by timeout
  is not rolled back with async
  is interrupted promptly with cancelling

Failures:

  test/Interrupt.hs:51:9: 
  1) without interrupt cancellable sleep is like sleep without cancelling
       expected: [(0,"sleep start"),(500000,"sleep exception"),(500000,"done")]
        but got: [(0,"sleep start"),(600000,"sleep exception"),(600000,"done")]

  To rerun use: --match "/without interrupt/cancellable sleep is like sleep without cancelling/"

  test/Interrupt.hs:93:9: 
  2) interruptOnAsyncException allows interrupting a blocking action
       expected: [(0,"outer start"),(0,"sleep start"),(500000,"sleep end"),(500000,"outer exception"),(500000,"done")]
        but got: [(0,"outer start"),(0,"sleep start"),(600000,"sleep end"),(600000,"outer exception"),(600000,"done")]

  To rerun use: --match "/interruptOnAsyncException/allows interrupting a blocking action/"

Randomized with seed 1756116040

Finished in 15.9149 seconds
17 examples, 2 failures
Test suite pg-client-test: FAIL
Test suite logged to: dist/test/pg-client-0.1.0-pg-client-test.log
0 of 1 test suites (0 of 1 test cases) passed.