Bug#850904: diffoscope crashes with FileExistsError: [Errno 17] File exists
Holger Levsen
holger at layer-acht.org
Wed Jan 11 01:40:01 UTC 2017
Package: diffoscope
Version: 67
Severity: normal
Hi,
from
https://jenkins.debian.net/job/reproducible_builder_armhf_8/15471/console
(which should be preserved forever…)
[...]
+timeout 120m nice schroot --directory /srv/reproducible-results/rbuild-debian-t4VQ69oJ -c source:jenkins-reproducible-unstable-diffoscope -- sh -c 'export TMPDIR=/srv/reproducible-results/rbuild-debian-t4VQ69oJ/dbd-tmp-rsSs31f ; diffoscope --html /srv/reproducible-results/rbuild-debian-t4VQ69oJ/kmplayer_0.11.3d-3.diffoscope.html --text /srv/reproducible-results/rbuild-debian-t4VQ69oJ/kmplayer_0.11.3d-3.diffoscope.txt --profile=- /srv/reproducible-results/rbuild-debian-t4VQ69oJ/b1/kmplayer_0.11.3d-3_armhf.changes /srv/reproducible-results/rbuild-debian-t4VQ69oJ/b2/kmplayer_0.11.3d-3_armhf.changes'
+ RESULT=2
++ grep '^E: 15binfmt: update-binfmts: unable to open' /srv/reproducible-results/rbuild-debian-t4VQ69oJ/tmp.CPhGB3K1C3
++ true
+ LOG_RESULT=
+ '[' '!' -z '' ']'
+ false
+ set +x
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 260, in main
sys.exit(run_diffoscope(parsed_args))
File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 236, in run_diffoscope
parsed_args.path1, parsed_args.path2)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 61, in compare_root_paths
return compare_files(file1, file2)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 78, in compare_files
return file1.compare(file2, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/debian.py", line 153, in compare
differences = super().compare(other, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 201, in compare
difference = self._compare_using_details(other, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 162, in _compare_using_details
details.extend(filter(None, self.as_container.compare(other.as_container)))
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 81, in compare_commented_files
difference = compare_files(file1, file2, source=source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 78, in compare_files
return file1.compare(file2, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 201, in compare
difference = self._compare_using_details(other, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 162, in _compare_using_details
details.extend(filter(None, self.as_container.compare(other.as_container)))
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 81, in compare_commented_files
difference = compare_files(file1, file2, source=source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 78, in compare_files
return file1.compare(file2, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 201, in compare
difference = self._compare_using_details(other, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 162, in _compare_using_details
details.extend(filter(None, self.as_container.compare(other.as_container)))
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 81, in compare_commented_files
difference = compare_files(file1, file2, source=source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 78, in compare_files
return file1.compare(file2, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 201, in compare
difference = self._compare_using_details(other, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 162, in _compare_using_details
details.extend(filter(None, self.as_container.compare(other.as_container)))
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 81, in compare_commented_files
difference = compare_files(file1, file2, source=source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 78, in compare_files
return file1.compare(file2, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 201, in compare
difference = self._compare_using_details(other, source)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 161, in _compare_using_details
if self.as_container:
File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 108, in as_container
self._as_container = self.__class__.CONTAINER_CLASS(self)
File "/usr/lib/python3/dist-packages/diffoscope/tools.py", line 50, in tool_check
return original_function(*args, **kwargs)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/elf.py", line 436, in __init__
self._install_debug_symbols()
File "/usr/lib/python3/dist-packages/diffoscope/tools.py", line 50, in tool_check
return original_function(*args, **kwargs)
File "/usr/lib/python3/dist-packages/diffoscope/comparators/elf.py", line 488, in _install_debug_symbols
os.mkdir(os.path.dirname(dest_path))
FileExistsError: [Errno 17] File exists: '/srv/reproducible-results/rbuild-debian-t4VQ69oJ/dbd-tmp-rsSs31f/tmpc7n1jfvr_diffoscope/./usr/bin/.debug'
Profiling output for: /usr/bin/diffoscope --html /srv/reproducible-results/rbuild-debian-t4VQ69oJ/kmplayer_0.11.3d-3.diffoscope.html --text /srv/reproducible-results/rbuild-debian-t4VQ69oJ/kmplayer_0.11.3d-3.diffoscope.txt --profile=- /srv/reproducible-results/rbuild-debian-t4VQ69oJ/b1/kmplayer_0.11.3d-3_armhf.changes /srv/reproducible-results/rbuild-debian-t4VQ69oJ/b2/kmplayer_0.11.3d-3_armhf.changes
====================================================================================================================================================================================================================================================================================================================================================================================================================
close_archive (total time: 0.001s)
----------------------------------
0.000s 11 calls diffoscope.comparators.gzip.GzipContainer
0.000s 11 calls diffoscope.comparators.tar.TarContainer
0.000s 2 calls diffoscope.comparators.deb.DebTarContainer
0.000s 2 calls diffoscope.comparators.xz.XzContainer
command (total time: 54.490s)
-----------------------------
47.471s 3122 calls readelf
3.955s 331 calls diff
1.020s 7 calls xz
0.991s 2 calls objcopy
0.835s 264 calls objdump
0.115s 12 calls gzip
0.101s 12 calls cmp
0.002s 15 calls cmp (internal)
compare_files (cumulative) (total time: 238.829s)
-------------------------------------------------
58.797s 6 calls abc.ElfFile
57.723s 1 call abc.DebFile
57.482s 1 call abc.XzFile
57.200s 1 call abc.DebDataTarFile
4.427s 117 calls diffoscope.comparators.elf.ElfSection
1.672s 24 calls diffoscope.comparators.elf.ElfCodeSection
1.107s 10 calls diffoscope.comparators.elf.ElfStringSection
0.198s 2 calls abc.GzipFile
0.126s 2 calls abc.TarFile
0.038s 1 call diffoscope.comparators.elf.MonkeyPatchedElfSection
0.032s 1 call abc.TextFile
0.025s 2 calls abc.Md5sumsFile
0.000s 13 calls diffoscope.comparators.utils.libarchive.LibarchiveDirectory
container_extract (total time: 1.773s)
--------------------------------------
1.020s 7 calls diffoscope.comparators.xz.XzContainer
0.311s 17 calls diffoscope.comparators.deb.DebTarContainer
0.246s 23 calls diffoscope.comparators.deb.DebContainer
0.179s 12 calls diffoscope.comparators.gzip.GzipContainer
0.016s 20 calls diffoscope.comparators.tar.TarContainer
has_same_content_as (total time: 0.868s)
----------------------------------------
0.588s 4 calls diffoscope.comparators.utils.archive.ArchiveMember
0.259s 19 calls diffoscope.comparators.utils.libarchive.LibarchiveMember
0.016s 2 calls diffoscope.comparators.debian.DebControlMember
0.002s 117 calls diffoscope.comparators.elf.ElfSection
0.001s 1 call diffoscope.comparators.utils.libarchive.LibarchiveSymlink
0.001s 24 calls diffoscope.comparators.elf.ElfCodeSection
0.000s 10 calls diffoscope.comparators.elf.ElfStringSection
0.000s 1 call abc.DotChangesFile
0.000s 13 calls diffoscope.comparators.utils.libarchive.LibarchiveDirectory
0.000s 1 call diffoscope.comparators.elf.MonkeyPatchedElfSection
main (total time: 0.098s)
-------------------------
0.094s 1 call cleanup
0.005s 1 call parse_args
open_archive (total time: 0.001s)
---------------------------------
0.000s 12 calls diffoscope.comparators.tar.TarContainer
0.000s 8 calls diffoscope.comparators.deb.DebContainer
0.000s 12 calls diffoscope.comparators.gzip.GzipContainer
0.000s 7 calls diffoscope.comparators.deb.DebTarContainer
0.000s 7 calls diffoscope.comparators.xz.XzContainer
recognizes (total time: 1.048s)
-------------------------------
0.524s 1063 calls diffoscope.comparators.utils.libarchive.LibarchiveMember
0.227s 10 calls abc.DotChangesFile
0.162s 536 calls diffoscope.comparators.utils.archive.ArchiveMember
0.056s 128 calls diffoscope.comparators.debian.DebControlMember
0.045s 2106 calls diffoscope.comparators.elf.ElfSection
0.009s 432 calls diffoscope.comparators.elf.ElfCodeSection
0.004s 17 calls abc.ElfFile
0.004s 180 calls diffoscope.comparators.elf.ElfStringSection
0.003s 12 calls abc.TarFile
0.003s 8 calls abc.DebFile
0.002s 12 calls abc.GzipFile
0.002s 18 calls diffoscope.comparators.elf.MonkeyPatchedElfSection
0.002s 8 calls abc.Md5sumsFile
0.002s 7 calls abc.DebDataTarFile
0.002s 7 calls abc.XzFile
0.001s 6 calls abc.TextFile
0.000s 8 calls diffoscope.comparators.binary.FilesystemFile
Mon Jan 9 14:34:40 UTC 2017 E: kmplayer failed to build reproducibly in unstable on armhf.
Mon Jan 9 14:34:40 UTC 2017 W: diffoscope 67 produced no output (which is strange).
UPDATE 1
INSERT 0 1
DELETE 1
INFO: Starting at 2017-01-09 14:34:41.561176
CRITICAL: https://tests.reproducible-builds.org/debian/unstable/amd64/kmplayer is unreproducible, but without diffoscope output.
CRITICAL: https://tests.reproducible-builds.org/debian/unstable/armhf/kmplayer is unreproducible, but without diffoscope output.
Sideremark 1: I think we might probably want to move the profiling info into seperate logfiles, not sure.
Sideremark 2: "amd64/kmplayer is unreproducible" is not relevant for this build, WTF?!
--
cheers,
Holger
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 811 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/reproducible-builds/attachments/20170111/72a3ee6c/attachment.sig>
More information about the Reproducible-builds
mailing list