Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

archive/tar: TestSparseFiles failing on plan9/arm builder #21977

Closed
0intro opened this issue Sep 22, 2017 · 5 comments
Closed

archive/tar: TestSparseFiles failing on plan9/arm builder #21977

0intro opened this issue Sep 22, 2017 · 5 comments

Comments

@0intro
Copy link
Member

0intro commented Sep 22, 2017

CL 60871 added TestSparseFiles. This test is failing on the plan9/arm builder.

--- FAIL: TestSparseFiles (117.51s)
    --- FAIL: TestSparseFiles/EmptyFile (0.17s)
    	tar_test.go:844: unexpected ReadFrom error: tar: write too long
    --- FAIL: TestSparseFiles/BigHole (0.25s)
    	tar_test.go:844: unexpected ReadFrom error: tar: write too long
    --- FAIL: TestSparseFiles/DataFront (0.44s)
    	tar_test.go:844: unexpected ReadFrom error: tar: write too long
    --- FAIL: TestSparseFiles/HoleFront (1.43s)
    	tar_test.go:872: sparse files mismatch
    --- FAIL: TestSparseFiles/DataMiddle (0.39s)
    	tar_test.go:844: unexpected ReadFrom error: tar: write too long
    --- FAIL: TestSparseFiles/HoleMiddle (1.41s)
    	tar_test.go:872: sparse files mismatch
    --- FAIL: TestSparseFiles/Multiple (109.91s)
    	tar_test.go:872: sparse files mismatch
FAIL
FAIL	archive/tar	140.157s

See https://build.golang.org/log/6c62187355a860390505342ac82661184645f959

@0intro 0intro added this to the Go1.10 milestone Sep 22, 2017
@0intro 0intro self-assigned this Sep 22, 2017
@0intro
Copy link
Member Author

0intro commented Sep 22, 2017

The test is only failing on the plan9/arm builder because this builder use the Fossil file system for /tmp instead of ramfs.

It seems there is an issue with the handling of sparse files in the Fossil file system.

@gopherbot
Copy link

Change https://golang.org/cl/65352 mentions this issue: archive/tar: skip TestSparseFiles on Plan 9

gopherbot pushed a commit that referenced this issue Sep 22, 2017
CL 60871 added TestSparseFiles. This test is succeeding
on Plan 9 when executed on the ramfs file system, but
is failing when executed on the Fossil file system.

This may be due to an issue in the handling of sparse
files in the Fossil file system on Plan 9 that should
be investigated.

Updates #21977.

Change-Id: I177afff519b862a5c548e094203c219504852006
Reviewed-on: https://go-review.googlesource.com/65352
Reviewed-by: Ian Lance Taylor <iant@golang.org>
@dsnet
Copy link
Member

dsnet commented Sep 22, 2017

I'll investigate why this is failing on Plan9. On OS without sparse file support, this test should still pass. It does however rely on being able to Seek beyond the EOF and write some data, with the assumption that the data in-between is filled with zeros (and on OS+FS that support it, represented by a sparse hole).

@millerresearch
Copy link
Contributor

TestSparseFiles was removed in 2017 by CL 78030.

@bcmills
Copy link
Contributor

bcmills commented Mar 16, 2023

It does however rely on being able to Seek beyond the EOF and write some data, with the assumption that the data in-between is filled with zeros

That assumption does not hold for io.Seeker implementations in general anyway (see #48316). I am not sure whether it ought to always hold for os.File in particular.

@bcmills bcmills closed this as not planned Won't fix, can't repro, duplicate, stale Mar 16, 2023
@golang golang locked and limited conversation to collaborators Mar 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants