sha3-384 mismatch
Didier Roche
didrocks at ubuntu.com
Mon Dec 5 08:24:42 UTC 2016
Le 05/12/2016 à 09:13, Madper Xie a écrit :
> I would say the cdn that we are using correctly is not friendly to me.
> (China telecom 200M fiber.)
> Downloading slowly(20KB/s) and unstable.
>
> Hi @Didier, I noticed that you mentioned
> https://bugs.launchpad.net/bugs/1643893
> <https://bugs.launchpad.net/bugs/1643893> twice in this thread.
> However I'm not able to access it... Is the project private?
It was public at the time I published it. However, then, I had to add
private information as part of debug output (macaroons, which is private
snapd credentials) in a launchpad comment. We thus had to turn it
privately as we can't remove them (in a comment), sorry for this.
Upstream has access to it.
Here is a copy and paste of title/description: "snapd doesn't handle
well flaky network"
"
Some network can be stalled or have few disconnects. snapd doesn't
support them and dropped the connexion on cryptic message contrary to
curl or wget which both supports large downloads.
$ sudo snap install face-detection-demo --beta --devmode
-> download starts with 0, 1, 2% and suddenly jump to 100% printing:
error: cannot perform the following tasks:
- Download snap "face-detection-demo" (49) from channel "beta" (sha3-384
mismatch downloading face-detection-demo: got
4c1ddd585f69dd6e1dc19c3eb6aa2f7ecbbd5671ce9f816cbdfd0647986a59fdd9313fde013d98a00d501f8ca4b0979e
but expected
40927e42f8339fcae0ed7edfd3215ffb0abc1dadbfedce446ad4b39c06cb9ad94f30bdd0c6514bdb6477e86727b75767)
wget works on the same machine.
Easy reproducer:
- install ubuntu core on a rpi2, plug the the eth45 cable to your laptop
- switch network-manager to network sharing mode
- try installing any snap (more than a meg) from the rpi2."
Didier
> BR,
> Madper
>
> On Mon, Dec 5, 2016 at 3:23 PM, Didier Roche <didrocks at ubuntu.com
> <mailto:didrocks at ubuntu.com>> wrote:
>
> Le 03/12/2016 à 16:01, Gustavo Niemeyer a écrit :
>> Hi Xavier,
>>
>> There's definitely a problem interrupting the connection with the
>> server. The fact it works sometimes means it's inconsistent.
>>
>> Can you please try to download such files several times out of
>> snap and snapd, to see what the error is?
>>
>> Per my note above, we had a bug in snapd which prevents the real
>> error from being shown. We're always showing the digest mismatch
>> instead, which will of course happen if the download is
>> interrupted before its end.
>>
>>
> As written on the bug report + some part feedback emails you
> received some weeks earlier, it seems you ignored one part of the
> issue. Yes, it seems the network is failing. However, snapd
> consistenly fails in my case for downloading, while other tools,
> like wget and curl can download bigger files, many times, without
> ever getting one failure. They are more robust in difficult
> network situations it seems.
>
> So either the store connection side is fragile or snapd isn't
> robust enough while other tools cope with those conditions just
> fine (without any warning/debug message telling that they are
> retrying).
> Cheers,
> Didier
>
>> On Sat, Dec 3, 2016 at 12:49 PM, Xavier Pegenaute
>> <xpegenaute at gmail.com <mailto:xpegenaute at gmail.com>> wrote:
>>
>> Hi all,
>>
>> I don't know exactly where to find all the data you are
>> asking for, but this is what I found (below). Related to the
>> network, as a test, I just downloaded the linux kernel
>> .tar.xz (98MB) using python requests and worked properly. I
>> am not using any proxy at all.
>>
>> The "snap install" worked with hello-world but failed with
>> webdm, docker and nmap. I didn't try anymore.
>>
>> Let me know if you want any further test.
>> Regards
>> Xavi
>>
>>
>> -----------------------------------------
>> root at localhost:/var/lib/snapd/snaps# ls -al webdm_24.snap
>> -rw-r--r-- 1 root root 3280896 Dec 3 14:12 webdm_24.snap
>> -----------------------------------------
>>
>> -----------------------------------------
>> root at localhost:/var/lib/snapd/snaps# sha384sum webdm_24.snap
>> 4ee3329efb0fc71a3217ec0fc7d92ba8f1d71db22036ddef8c4abefae6ca0dbe3e1847fde14bd420fc061c8d9b0795e8
>> webdm_24.snap
>> -----------------------------------------
>>
>> Part of /var/lib/snapd/state.json:
>> -----------------------------------------
>> "tasks": {
>> "113": {
>> "id": "113",
>> "kind": "download-snap",
>> "summary": "Download snap \"webdm\" (24) from channel
>> \"stable\"",
>> "status": 9,
>> "clean": true,
>> "progress": {
>> "label": "webdm",
>> "done": 3280896,
>> "total": 3280896
>> },
>> "data": {
>> "snap-setup": {
>> "channel": "stable",
>> "download-info": {
>> "anon-download-url":
>> "https://public.apps.ubuntu.com/anon/download-snap/rFpKbTdZ31LyAxWF6RpcerZov1TdtDly_24.snap
>> <https://public.apps.ubuntu.com/anon/download-snap/rFpKbTdZ31LyAxWF6RpcerZov1TdtDly_24.snap>",
>> "download-url":
>> "https://public.apps.ubuntu.com/download-snap/rFpKbTdZ31LyAxWF6RpcerZov1TdtDly_24.snap
>> <https://public.apps.ubuntu.com/download-snap/rFpKbTdZ31LyAxWF6RpcerZov1TdtDly_24.snap>",
>> "size": 3280896,
>> "sha3-384":
>> "d03ac82e6b4b559cc918ef581eacb933e66ad36b18f6bcb1b0ac4d91260ee14a815526d2bcecc474b215639ce2a3fcef"
>> },
>> "side-info": {
>> "name": "webdm",
>> "snap-id": "rFpKbTdZ31LyAxWF6RpcerZov1TdtDly",
>> "revision": "24",
>> "channel": "stable",
>> "developer-id": "canonical",
>> "developer": "canonical",
>> "summary": "# Snappyd",
>> "description": "This service allows you to manage
>> your core device from a web interface."
>> }
>> }
>> },
>> "halt-tasks": [
>> "114",
>> "120"
>> ],
>> "log": [
>> "2016-12-03T14:08:45Z ERROR sha3-384 mismatch
>> downloading webdm: got
>> d03ac82e6b4b559cc918ef581eacb933e66ad36b18f6bcb1b0ac4d91260ee14a815526d2bcecc474b215639ce2a3fcef
>> but expected cea4eb570b28a3234
>> 410cc1abaf19a8a3b0f9d80fe71f6c422334a44267ffbca454eb85684722d3a517fe7666f5b8a85"
>> ],
>> "change": "22",
>> "spawn-time": "2016-12-03T14:08:41.26081942Z",
>> "ready-time": "2016-12-03T14:08:45.426213255Z"
>> },
>> -----------------------------------------
>>
>>
>>
>> 2016-12-02 22:24 GMT+01:00 Gustavo Niemeyer
>> <gustavo.niemeyer at canonical.com
>> <mailto:gustavo.niemeyer at canonical.com>>:
>>
>> The problem here is just that we're checking the digest
>> mismatch before we check the error reading from the
>> network. Obviously, if we fail to read from the network,
>> the mismatch will always occur. If the mismatch doesn't
>> occur, we might not even report the network error since
>> we got all the data we needed anyway.
>>
>> Offending logic:
>>
>> https://github.com/snapcore/snapd/blob/master/store/store.go#L1388
>> <https://github.com/snapcore/snapd/blob/master/store/store.go#L1388>
>>
>>
>>
>>
>> On Fri, Dec 2, 2016 at 4:15 PM, Gustavo Niemeyer
>> <gustavo.niemeyer at canonical.com
>> <mailto:gustavo.niemeyer at canonical.com>> wrote:
>>
>> The broken snap is a prefix of the actual snap:
>>
>> [niemeyer at nomade ~/test]% dd
>> if=cr5pkasGhR7N3M8wKfP9DJqGxbBGeET2_25.snap
>> of=broken.snap bs=409018 count=1
>> 1+0 records in
>> 1+0 records out
>> 409018 bytes (409 kB, 399 KiB) copied, 0,0024764 s,
>> 165 MB/s
>>
>> [niemeyer at nomade ~/test]% sha3384 broken.snap
>> broken.snap:
>> d0e1cd6d578c8eaab13e10dac4acbd7e8f6337da45b291fa7ae0358a29393059732b29bb61a65d18e693b8e6e8a53b62
>>
>>
>> Either the CDN is returning a successful code on
>> interruption, or we're mishandling the actual
>> interruption code.
>>
>>
>>
>> On Fri, Dec 2, 2016 at 2:52 PM, Michael Vogt
>> <michael.vogt at canonical.com
>> <mailto:michael.vogt at canonical.com>> wrote:
>>
>> On Fri, Dec 02, 2016 at 02:32:03PM +0100, David
>> Barth wrote:
>> > On Fri, Dec 2, 2016 at 1:04 PM, Pegenaute
>> Bresme, Xavier <
>> > xpegenautebr at iam.cat
>> <mailto:xpegenautebr at iam.cat>> wrote:
>> [..]
>> > > - Download snap "snapweb" (25) from channel
>> "stable" (sha3-384 mismatch
>> > > downloading snapweb: got
>> 8b83c8eb7f7aa306bc342fd1b424fa
>> > >
>> 95ccf379c068c4735085bc81ee6b51bb02a23b8c3c2a34f842619d7650b3152787
>> but
>> > > expected
>> d0e1cd6d578c8eaab13e10dac4acbd7e8f6337da45b291fa7ae0358a2939
>> > > 3059732b29bb61a65d18e693b8e6e8a53b62)
>> > >
>> >
>> > What is surprising is the "expected" signature.
>> > Snap is downloading the correct armhf build for
>> 0.21.2, ie #25, and the
>> > SHA3 it obtained corresponds to the published
>> version.
>>
>> This version of snapd has a mixup of expected vs
>> actual hash, this is
>> fixed in git. Sorry for the confusion.
>>
>> I would love to see the actual file that got
>> downloaded, that is
>> probably tricky because currently we delete those
>> iirc. It would be
>> good to have the file to see if its garbage or a
>> mostly valid squashfs
>> with some garbage in between or something else.
>> Also size would be
>> interessting etc.
>>
>> Cheers,
>> Michael
>>
>> --
>> Snapcraft mailing list
>> Snapcraft at lists.snapcraft.io
>> <mailto:Snapcraft at lists.snapcraft.io>
>> Modify settings or unsubscribe at:
>> https://lists.ubuntu.com/mailman/listinfo/snapcraft
>> <https://lists.ubuntu.com/mailman/listinfo/snapcraft>
>>
>>
>>
>>
>> --
>> gustavo @ http://niemeyer.net
>>
>>
>>
>>
>> --
>> gustavo @ http://niemeyer.net
>>
>> --
>> Snapcraft mailing list
>> Snapcraft at lists.snapcraft.io
>> <mailto:Snapcraft at lists.snapcraft.io>
>> Modify settings or unsubscribe at:
>> https://lists.ubuntu.com/mailman/listinfo/snapcraft
>> <https://lists.ubuntu.com/mailman/listinfo/snapcraft>
>>
>>
>>
>> --
>> Snapcraft mailing list
>> Snapcraft at lists.snapcraft.io
>> <mailto:Snapcraft at lists.snapcraft.io>
>> Modify settings or unsubscribe at:
>> https://lists.ubuntu.com/mailman/listinfo/snapcraft
>> <https://lists.ubuntu.com/mailman/listinfo/snapcraft>
>>
>>
>>
>>
>> --
>>
>> gustavo @ http://niemeyer.net
>>
>>
>
>
> --
> Snapcraft mailing list
> Snapcraft at lists.snapcraft.io <mailto:Snapcraft at lists.snapcraft.io>
> Modify settings or unsubscribe at:
> https://lists.ubuntu.com/mailman/listinfo/snapcraft
> <https://lists.ubuntu.com/mailman/listinfo/snapcraft>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/snapcraft/attachments/20161205/15d28912/attachment.html>
More information about the Snapcraft
mailing list