[pkg-go] Bug#976907: golang-github-boltdb-bolt: FTBFS on ppc64el (arch:all-only src pkg): dh_auto_test: error: cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 -short github.com/boltdb/bolt github.com/boltdb/bolt/cmd/bolt returned exit code 1

Lucas Nussbaum lucas at debian.org
Wed Dec 9 09:03:31 GMT 2020


Source: golang-github-boltdb-bolt
Version: 1.3.1-7
Severity: serious
Justification: FTBFS on ppc64el
Tags: bullseye sid ftbfs
Usertags: ftbfs-20201209 ftbfs-bullseye ftbfs-ppc64el

Hi,

During a rebuild of all packages in sid, your package failed to build
on ppc64el. At the same time, it did not fail on amd64.

I'm marking this bug as severity:serious since your package has only
Architecture:all binary packages, and should thus, in theory, build
everywhere. Failure to build on ppc64el might indicate a serious issue
in this package or in another package.

But feel free to downgrade or close if you believe that this is only a
build-time issue. (I would personnally prefer a severity:minor bug just to
track that the package can only be built on specific architectures.)

Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> dh_auto_test -- -short
> 	cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 -short github.com/boltdb/bolt github.com/boltdb/bolt/cmd/bolt
> seed: 10742
> quick settings: count=5, items=1000, ksize=1024, vsize=1024
> === RUN   TestFreelist_free
> --- PASS: TestFreelist_free (0.00s)
> === RUN   TestFreelist_free_overflow
> --- PASS: TestFreelist_free_overflow (0.00s)
> === RUN   TestFreelist_release
> --- PASS: TestFreelist_release (0.00s)
> === RUN   TestFreelist_allocate
> --- PASS: TestFreelist_allocate (0.00s)
> === RUN   TestFreelist_read
> --- PASS: TestFreelist_read (0.00s)
> === RUN   TestFreelist_write
> --- PASS: TestFreelist_write (0.00s)
> === RUN   TestNode_put
> --- PASS: TestNode_put (0.00s)
> === RUN   TestNode_read_LeafPage
> --- PASS: TestNode_read_LeafPage (0.00s)
> === RUN   TestNode_write_LeafPage
> --- PASS: TestNode_write_LeafPage (0.00s)
> === RUN   TestNode_split
> --- PASS: TestNode_split (0.00s)
> === RUN   TestNode_split_MinKeys
> --- PASS: TestNode_split_MinKeys (0.00s)
> === RUN   TestNode_split_SinglePage
> --- PASS: TestNode_split_SinglePage (0.00s)
> === RUN   TestPage_typ
> --- PASS: TestPage_typ (0.00s)
> === RUN   TestPage_dump
> 00010000000000000000000000000000
> --- PASS: TestPage_dump (0.00s)
> === RUN   TestPgids_merge
> --- PASS: TestPgids_merge (0.00s)
> === RUN   TestPgids_merge_quick
> --- PASS: TestPgids_merge_quick (0.01s)
> === RUN   TestBucket_Get_NonExistent
> --- PASS: TestBucket_Get_NonExistent (0.16s)
> === RUN   TestBucket_Get_FromNode
> --- PASS: TestBucket_Get_FromNode (0.35s)
> === RUN   TestBucket_Get_IncompatibleValue
> --- PASS: TestBucket_Get_IncompatibleValue (0.20s)
> === RUN   TestBucket_Get_Capacity
> --- PASS: TestBucket_Get_Capacity (0.11s)
> === RUN   TestBucket_Put
> --- PASS: TestBucket_Put (0.10s)
> === RUN   TestBucket_Put_Repeat
> --- PASS: TestBucket_Put_Repeat (0.10s)
> === RUN   TestBucket_Put_Large
> --- PASS: TestBucket_Put_Large (0.15s)
> === RUN   TestDB_Put_VeryLarge
>     bucket_test.go:210: skipping test in short mode.
> --- SKIP: TestDB_Put_VeryLarge (0.00s)
> === RUN   TestBucket_Put_IncompatibleValue
> --- PASS: TestBucket_Put_IncompatibleValue (0.11s)
> === RUN   TestBucket_Put_Closed
> --- PASS: TestBucket_Put_Closed (0.07s)
> === RUN   TestBucket_Put_ReadOnly
> --- PASS: TestBucket_Put_ReadOnly (0.10s)
> === RUN   TestBucket_Delete
> --- PASS: TestBucket_Delete (0.09s)
> === RUN   TestBucket_Delete_Large
> --- PASS: TestBucket_Delete_Large (0.10s)
> === RUN   TestBucket_Delete_FreelistOverflow
>     bucket_test.go:385: skipping test in short mode.
> --- SKIP: TestBucket_Delete_FreelistOverflow (0.00s)
> === RUN   TestBucket_Nested
> --- PASS: TestBucket_Nested (0.42s)
> === RUN   TestBucket_Delete_Bucket
> --- PASS: TestBucket_Delete_Bucket (0.09s)
> === RUN   TestBucket_Delete_ReadOnly
> --- PASS: TestBucket_Delete_ReadOnly (0.10s)
> === RUN   TestBucket_Delete_Closed
> --- PASS: TestBucket_Delete_Closed (0.09s)
> === RUN   TestBucket_DeleteBucket_Nested
> --- PASS: TestBucket_DeleteBucket_Nested (0.10s)
> === RUN   TestBucket_DeleteBucket_Nested2
> --- PASS: TestBucket_DeleteBucket_Nested2 (0.10s)
> === RUN   TestBucket_DeleteBucket_Large
> --- PASS: TestBucket_DeleteBucket_Large (0.12s)
> === RUN   TestBucket_Bucket_IncompatibleValue
> --- PASS: TestBucket_Bucket_IncompatibleValue (0.10s)
> === RUN   TestBucket_CreateBucket_IncompatibleValue
> --- PASS: TestBucket_CreateBucket_IncompatibleValue (0.15s)
> === RUN   TestBucket_DeleteBucket_IncompatibleValue
> --- PASS: TestBucket_DeleteBucket_IncompatibleValue (0.10s)
> === RUN   TestBucket_Sequence
> --- PASS: TestBucket_Sequence (0.09s)
> === RUN   TestBucket_NextSequence
> --- PASS: TestBucket_NextSequence (0.10s)
> === RUN   TestBucket_NextSequence_Persist
> --- PASS: TestBucket_NextSequence_Persist (0.13s)
> === RUN   TestBucket_NextSequence_ReadOnly
> --- PASS: TestBucket_NextSequence_ReadOnly (0.10s)
> === RUN   TestBucket_NextSequence_Closed
> --- PASS: TestBucket_NextSequence_Closed (0.08s)
> === RUN   TestBucket_ForEach
> --- PASS: TestBucket_ForEach (0.10s)
> === RUN   TestBucket_ForEach_ShortCircuit
> --- PASS: TestBucket_ForEach_ShortCircuit (0.10s)
> === RUN   TestBucket_ForEach_Closed
> --- PASS: TestBucket_ForEach_Closed (0.07s)
> === RUN   TestBucket_Put_EmptyKey
> --- PASS: TestBucket_Put_EmptyKey (0.10s)
> === RUN   TestBucket_Put_KeyTooLarge
> --- PASS: TestBucket_Put_KeyTooLarge (0.10s)
> === RUN   TestBucket_Put_ValueTooLarge
> --- PASS: TestBucket_Put_ValueTooLarge (0.25s)
> === RUN   TestBucket_Stats
>     bucket_test.go:1172: unexpected BranchPageN: 0
> --- FAIL: TestBucket_Stats (6.41s)
> === RUN   TestBucket_Stats_RandomFill
>     bucket_test.go:1226: skipping test in short mode.
> --- SKIP: TestBucket_Stats_RandomFill (0.00s)
> === RUN   TestBucket_Stats_Small
> --- PASS: TestBucket_Stats_Small (0.10s)
> === RUN   TestBucket_Stats_EmptyBucket
> --- PASS: TestBucket_Stats_EmptyBucket (0.11s)
> === RUN   TestBucket_Stats_Nested
> --- PASS: TestBucket_Stats_Nested (0.11s)
> === RUN   TestBucket_Stats_Large
>     bucket_test.go:1520: skipping test in short mode.
> --- SKIP: TestBucket_Stats_Large (0.00s)
> === RUN   TestBucket_Put_Single
>     bucket_test.go:1593: skipping test in short mode.
> --- SKIP: TestBucket_Put_Single (0.00s)
> === RUN   TestBucket_Put_Multiple
>     bucket_test.go:1651: skipping test in short mode.
> --- SKIP: TestBucket_Put_Multiple (0.00s)
> === RUN   TestBucket_Delete_Quick
>     bucket_test.go:1704: skipping test in short mode.
> --- SKIP: TestBucket_Delete_Quick (0.00s)
> === RUN   TestCursor_Bucket
> --- PASS: TestCursor_Bucket (0.10s)
> === RUN   TestCursor_Seek
> --- PASS: TestCursor_Seek (0.10s)
> === RUN   TestCursor_Delete
> --- PASS: TestCursor_Delete (0.13s)
> === RUN   TestCursor_Seek_Large
> --- PASS: TestCursor_Seek_Large (0.14s)
> === RUN   TestCursor_EmptyBucket
> --- PASS: TestCursor_EmptyBucket (0.10s)
> === RUN   TestCursor_EmptyBucketReverse
> --- PASS: TestCursor_EmptyBucketReverse (0.10s)
> === RUN   TestCursor_Iterate_Leaf
> --- PASS: TestCursor_Iterate_Leaf (0.10s)
> === RUN   TestCursor_LeafRootReverse
> --- PASS: TestCursor_LeafRootReverse (0.09s)
> === RUN   TestCursor_Restart
> --- PASS: TestCursor_Restart (0.10s)
> === RUN   TestCursor_First_EmptyPages
> --- PASS: TestCursor_First_EmptyPages (0.11s)
> === RUN   TestCursor_QuickCheck
> --- PASS: TestCursor_QuickCheck (0.68s)
> === RUN   TestCursor_QuickCheck_Reverse
> --- PASS: TestCursor_QuickCheck_Reverse (0.69s)
> === RUN   TestCursor_QuickCheck_BucketsOnly
> --- PASS: TestCursor_QuickCheck_BucketsOnly (0.11s)
> === RUN   TestCursor_QuickCheck_BucketsOnly_Reverse
> --- PASS: TestCursor_QuickCheck_BucketsOnly_Reverse (0.09s)
> === RUN   TestOpen
> --- PASS: TestOpen (0.03s)
> === RUN   TestOpen_ErrPathRequired
> --- PASS: TestOpen_ErrPathRequired (0.00s)
> === RUN   TestOpen_ErrNotExists
> --- PASS: TestOpen_ErrNotExists (0.00s)
> === RUN   TestOpen_ErrInvalid
> --- PASS: TestOpen_ErrInvalid (0.00s)
> === RUN   TestOpen_ErrVersionMismatch
>     db_test.go:111: page size mismatch
> --- SKIP: TestOpen_ErrVersionMismatch (0.00s)
> === RUN   TestOpen_ErrChecksum
>     db_test.go:148: page size mismatch
> --- SKIP: TestOpen_ErrChecksum (0.00s)
> === RUN   TestOpen_Size
> --- PASS: TestOpen_Size (0.60s)
> === RUN   TestOpen_Size_Large
>     db_test.go:246: short mode
> --- SKIP: TestOpen_Size_Large (0.00s)
> === RUN   TestOpen_Check
> --- PASS: TestOpen_Check (0.03s)
> === RUN   TestOpen_MetaInitWriteError
>     db_test.go:339: pending
> --- SKIP: TestOpen_MetaInitWriteError (0.00s)
> === RUN   TestOpen_FileTooSmall
> --- PASS: TestOpen_FileTooSmall (0.03s)
> === RUN   TestDB_Open_InitialMmapSize
> --- PASS: TestDB_Open_InitialMmapSize (1.47s)
> === RUN   TestDB_Begin_ErrDatabaseNotOpen
> --- PASS: TestDB_Begin_ErrDatabaseNotOpen (0.00s)
> === RUN   TestDB_BeginRW
> --- PASS: TestDB_BeginRW (0.09s)
> === RUN   TestDB_BeginRW_Closed
> --- PASS: TestDB_BeginRW_Closed (0.00s)
> === RUN   TestDB_Close_PendingTx_RW
> --- PASS: TestDB_Close_PendingTx_RW (0.29s)
> === RUN   TestDB_Close_PendingTx_RO
> --- PASS: TestDB_Close_PendingTx_RO (0.29s)
> === RUN   TestDB_Update
> --- PASS: TestDB_Update (0.10s)
> === RUN   TestDB_Update_Closed
> --- PASS: TestDB_Update_Closed (0.00s)
> === RUN   TestDB_Update_ManualCommit
> --- PASS: TestDB_Update_ManualCommit (0.11s)
> === RUN   TestDB_Update_ManualRollback
> --- PASS: TestDB_Update_ManualRollback (0.08s)
> === RUN   TestDB_View_ManualCommit
> --- PASS: TestDB_View_ManualCommit (0.09s)
> === RUN   TestDB_View_ManualRollback
> --- PASS: TestDB_View_ManualRollback (0.07s)
> === RUN   TestDB_Update_Panic
>     db_test.go:671: recover: update omg
> --- PASS: TestDB_Update_Panic (0.11s)
> === RUN   TestDB_View_Error
> --- PASS: TestDB_View_Error (0.08s)
> === RUN   TestDB_View_Panic
>     db_test.go:736: recover: view omg
> --- PASS: TestDB_View_Panic (0.09s)
> === RUN   TestDB_Stats
> --- PASS: TestDB_Stats (0.10s)
> === RUN   TestDB_Consistency
> --- PASS: TestDB_Consistency (0.29s)
> === RUN   TestDBStats_Sub
> --- PASS: TestDBStats_Sub (0.00s)
> === RUN   TestDB_Batch
> --- PASS: TestDB_Batch (0.13s)
> === RUN   TestDB_Batch_Panic
> --- PASS: TestDB_Batch_Panic (0.09s)
> === RUN   TestDB_BatchFull
> --- PASS: TestDB_BatchFull (0.12s)
> === RUN   TestDB_BatchTime
> --- PASS: TestDB_BatchTime (0.12s)
> === RUN   TestSimulate_1op_1p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_1op_1p (0.00s)
> === RUN   TestSimulate_10op_1p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_10op_1p (0.00s)
> === RUN   TestSimulate_100op_1p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_100op_1p (0.00s)
> === RUN   TestSimulate_1000op_1p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_1000op_1p (0.00s)
> === RUN   TestSimulate_10000op_1p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_10000op_1p (0.00s)
> === RUN   TestSimulate_10op_10p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_10op_10p (0.00s)
> === RUN   TestSimulate_100op_10p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_100op_10p (0.00s)
> === RUN   TestSimulate_1000op_10p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_1000op_10p (0.00s)
> === RUN   TestSimulate_10000op_10p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_10000op_10p (0.00s)
> === RUN   TestSimulate_100op_100p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_100op_100p (0.00s)
> === RUN   TestSimulate_1000op_100p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_1000op_100p (0.00s)
> === RUN   TestSimulate_10000op_100p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_10000op_100p (0.00s)
> === RUN   TestSimulate_10000op_1000p
>     simulation_test.go:33: skipping test in short mode.
> --- SKIP: TestSimulate_10000op_1000p (0.00s)
> === RUN   TestTx_Commit_ErrTxClosed
> --- PASS: TestTx_Commit_ErrTxClosed (0.08s)
> === RUN   TestTx_Rollback_ErrTxClosed
> --- PASS: TestTx_Rollback_ErrTxClosed (0.09s)
> === RUN   TestTx_Commit_ErrTxNotWritable
> panic: test timed out after 10m0s
> 
> goroutine 458 [running]:
> testing.(*M).startAlarm.func1()
> 	/usr/lib/go-1.15/src/testing/testing.go:1618 +0xcc
> created by time.goFunc
> 	/usr/lib/go-1.15/src/time/sleep.go:167 +0x44
> 
> goroutine 1 [chan receive, 9 minutes]:
> testing.(*T).Run(0xc000683980, 0x1bd0c6, 0x1e, 0x1c2a50, 0x401)
> 	/usr/lib/go-1.15/src/testing/testing.go:1169 +0x280
> testing.runTests.func1(0xc000001200)
> 	/usr/lib/go-1.15/src/testing/testing.go:1439 +0x78
> testing.tRunner(0xc000001200, 0xc000204d58)
> 	/usr/lib/go-1.15/src/testing/testing.go:1123 +0xd8
> testing.runTests(0xc00000c060, 0x2da260, 0x90, 0x90, 0xbfec21b4ec6cbbb1, 0x8bb2ce6ccc, 0x2dccc0, 0x3c)
> 	/usr/lib/go-1.15/src/testing/testing.go:1437 +0x2b4
> testing.(*M).Run(0xc00000a080, 0x0)
> 	/usr/lib/go-1.15/src/testing/testing.go:1345 +0x1a0
> main.main()
> 	_testmain.go:365 +0x130
> 
> goroutine 380 [semacquire, 9 minutes]:
> sync.runtime_SemacquireMutex(0xc0002f6740, 0x0, 0x0)
> 	/usr/lib/go-1.15/src/runtime/sema.go:71 +0x44
> sync.(*RWMutex).Lock(0xc0002f6738)
> 	/usr/lib/go-1.15/src/sync/rwmutex.go:103 +0xd0
> github.com/boltdb/bolt.(*DB).mmap(0xc0002f65a0, 0x60000, 0x0, 0x0)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/db.go:246 +0x50
> github.com/boltdb/bolt.(*DB).allocate(0xc0002f65a0, 0x1, 0x2, 0xc000677dd0, 0x1)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/db.go:849 +0x110
> github.com/boltdb/bolt.(*Tx).allocate(0xc0002c3420, 0x1, 0x7fff54a60000, 0xa8, 0x310148)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/tx.go:456 +0x38
> github.com/boltdb/bolt.(*Tx).Commit(0xc0002c3420, 0x0, 0x0)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/tx.go:177 +0x1ac
> github.com/boltdb/bolt.(*DB).Update(0xc0002f65a0, 0x1c2510, 0x0, 0x0)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/db.go:605 +0xf4
> github.com/boltdb/bolt_test.(*DB).MustCheck(0xc00000e148)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/db_test.go:1419 +0x3c
> github.com/boltdb/bolt_test.(*DB).Close(0xc00000e148, 0x0, 0x0)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/db_test.go:1388 +0x58
> github.com/boltdb/bolt_test.(*DB).MustClose(0xc00000e148)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/db_test.go:1397 +0x2c
> github.com/boltdb/bolt_test.TestTx_Commit_ErrTxNotWritable(0xc000683980)
> 	/<<PKGBUILDDIR>>/obj-powerpc64le-linux-gnu/src/github.com/boltdb/bolt/tx_test.go:65 +0x12c
> testing.tRunner(0xc000683980, 0x1c2a50)
> 	/usr/lib/go-1.15/src/testing/testing.go:1123 +0xd8
> created by testing.(*T).Run
> 	/usr/lib/go-1.15/src/testing/testing.go:1168 +0x264
> FAIL	github.com/boltdb/bolt	600.025s
> === RUN   TestInfoCommand_Run
> --- PASS: TestInfoCommand_Run (0.11s)
> === RUN   TestStatsCommand_Run_EmptyDatabase
>     main_test.go:36: system does not use 4KB page size
> --- SKIP: TestStatsCommand_Run_EmptyDatabase (0.00s)
> === RUN   TestStatsCommand_Run
>     main_test.go:76: system does not use 4KB page size
> --- SKIP: TestStatsCommand_Run (0.00s)
> === RUN   TestCompactCommand_Run
> --- PASS: TestCompactCommand_Run (0.82s)
> PASS
> ok  	github.com/boltdb/bolt/cmd/bolt	0.935s
> FAIL
> dh_auto_test: error: cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 -short github.com/boltdb/bolt github.com/boltdb/bolt/cmd/bolt returned exit code 1

The full build log is available from:
   http://qa-logs.debian.net/2020/12/09/golang-github-boltdb-bolt_1.3.1-7_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with me
so that we can identify if something relevant changed in the meantime.

About the archive rebuild: The rebuild was done on a Power8 cluster part of the
Grid'5000 testbed. Hardware specs: https://www.grid5000.fr/w/Grenoble:Hardware#drac



More information about the Pkg-go-maintainers mailing list