verifiablesoftware / vsw

Core project of VerifiableSoftware
Apache License 2.0
1 stars 0 forks source link

vsw client stuck in "request_sent" state #90

Closed wenjing closed 3 years ago

wenjing commented 3 years ago

I ran a simple publish, followed by verify, test. The issuer's publish and the verifier's verify both succeeded with no error. I waited for a night, and continued with a repeat of exact same verify command by the verifier. It failed with the following error. I repeated a verify command by another user (from a different vsw account), it had the same error. Same problem persists when I tried another day later. "vsw list -c" lists the connection with repo in good status.

root@2a14b1d637bd:/# vsw verify -n vsw -v 0.0.4 -u https://files.pythonhosted.org/packages/b3/93/da84cc6253441efb54a923c67b3c948ab5b7369ca6dabce193c685b3fcf0/vsw-0.0.4.tar.gz -i SGfvqmW1y9vBxpjqWR1KcB 2021-04-16 20:09:05 vsw.commands.verify INFO /usr/local/lib/python3.6/dist-packages/vsw/commands/verify.py Executing verify, please wait for response... digest: z2d9pM8uz5CPu3tZ7xmyyNPVVWyMLzNLdXSRuHfhd5EiVB1VVey2hR3UaGQ9PhAx1Wh4yuMPc6zsE1LiJDNVdxSy5N 2021-04-16 20:09:06 vsw.commands.verify INFO /usr/local/lib/python3.6/dist-packages/vsw/commands/verify.py presentation_exchange_id: a4c27f5c-4405-4c19-b54f-576d3b12ea9e waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent ^C ==> Exit verify! root@2a14b1d637bd:/# root@2a14b1d637bd:/#

wenjing commented 3 years ago

Add: I then exited the verifier container, restarted from scratch, that made it work again. So, over time, the vsw client and repo seems to become out of sync.

-I do not know if the repo restarted in between.

This is a bug regardless - the vsw client must be able to keep in sync with the repo, including repo restarting.

wenjing commented 3 years ago

Add another scenario. I'm not sure if this is the same problem but the symptom is identical.

I ran "vsw verify" successfully (ie providing correct request and getting correct proof), then I continued with incorrect inputs (the correct behavior is for the proof to fail). This also worked for all but one parameter. I checked it worked as expected for incorrect developer-DID, softwareName, softwareUrl. But when I provided incorrect version - it seems to fail to return from the holder. Here it is: Note I gave "-v 0.05" instead of "-v 0.0.4" (the current version).

root@14f6443bd086:/# vsw verify -n vsw -v 0.0.5 -u https://files.pythonhosted.org/packages/b3/93/da84cc6253441efb54a923c67b3c948ab5b7369ca6dabce193c685b3fcf0/vsw-0.0.4.tar.gz -i SGfvqmW1y9vBxpjqWR1KcB 2021-04-19 20:53:34 vsw.commands.verify INFO /usr/local/lib/python3.6/dist-packages/vsw/commands/verify.py Executing verify, please wait for response... digest: z2d9pM8uz5CPu3tZ7xmyyNPVVWyMLzNLdXSRuHfhd5EiVB1VVey2hR3UaGQ9PhAx1Wh4yuMPc6zsE1LiJDNVdxSy5N 2021-04-19 20:53:36 vsw.commands.verify INFO /usr/local/lib/python3.6/dist-packages/vsw/commands/verify.py presentation_exchange_id: dd4d0ac0-30c0-4c3c-9930-55519407d7bc waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent waiting state update, current state is: request_sent ^C ==> Exit verify! root@14f6443bd086:/#

wenjing commented 3 years ago

I changed the title of this issue to reflect more general description of the behavior

wenjing commented 3 years ago

Another scenario leads to the same problem:

"vsw exit", then reenter by "vsw setup -n wallet"

It also ends with the same state in request_sent. It eventually times out and reports verify error.

wenjing commented 3 years ago

Fixed