SAFE Network Dev Update - April 9, 2020

and just to note random file also sees cat works and files get not…

$ safe files get safe://hbhyyynsxu1eowqanmnn9ymyueiqipukw4k49xtphsumsm851obgxuud79
[2020-04-14T21:22:51Z ERROR safe] safe-cli error: [Error] NetDataError - Failed to get current version: [Error] NetDataError - Failed to get Sequenced Append Only Data: NetDataError("Failed to get Sequenced Append Only Data indices: CoreError(Data error -> Requested data not found - CoreError::DataError -> NoSuchData)")
$ safe cat safe://hbhyyynsxu1eowqanmnn9ymyueiqipukw4k49xtphsumsm851obgxuud79
html, body {background:#f4f4f6;}
img {margin:10px auto; display: block;}

FWIW safe files get works just fine here

willie@sputnik:~$ safe files get safe://cdn/css/style.css
  [00:00:00] [########################################] 31B/31B (324B/s, 0s)  Transfer
Done. Retrieved 1 files to .
willie@sputnik:~$ cat style.css
.dummy {
  font-size: large;
}
willie@sputnik:~$ safe cat safe://cdn/css/style.css
.dummy {
  font-size: large;
}

Very strange. Did you update from the CLI or install from scratch?

1 Like

I updated on that machine( my laptop)

Aaaand it works fine on this machine (desktop) which I installed from scratch on

willie@gagarin:/tmp$ `which safe` -V
safe-cli 0.12.0

I just did
` willie@gagarin:/tmp$ safe files get safe://cdn/js/vue.min.js
[00:00:00] [########################################] 91.47KB/91.47KB (523.91KB/s, 0s) Transfer
Done. Retrieved 1 files to .

willie@gagarin:/tmp$ cat vue.min.js
/*!
* Vue.js v2.6.11
* (c) 2014-2019 Evan You
* Released under the MIT License.
*/
!function(e,t){“object”==typeof exports& ----- ` and so on for another 90k…

1 Like

I can get your files, but not my own!

Can you try
safe files get safe://hbwynydsqdt8ophjse766t3qxsck1n95t1bwni7i44usf1ukc4316eokxn

1 Like

willie@gagarin:/tmp$ safe files get safe://hbwynydsqdt8ophjse766t3qxsck1n95t1bwni7i44usf1ukc4316eokxn
[2020-04-14T22:47:42Z ERROR safe] safe-cli error: [Error] NetDataError - Failed to get current version: [Error] NetDataError - Failed to get Sequenced Append Only Data: NetDataError(“Failed to get Sequenced Append Only Data indices: CoreError(Data error → Requested data not found - CoreError::DataError → NoSuchData)”)

The files subcommands (get, ls, tree) operate on FilesContainer urls. In your example, it would be safe://hnyynyz47j...

It appears you are trying to get the file url, which is an immutableobject. In your example: safe://hbwynydsqdt8o...

See the difference in the output of safe files put?

So please try instead:

safe files get safe://hnyynyz47j4sfjrg78si34n19rc1rhmoysmiondi1uaxd1bz5nwx9sygssbnc

or

safe files get safe://hnyynyz47j4sfjrg78si34n19rc1rhmoysmiondi1uaxd1bz5nwx9sygssbnc/safe-get-error.png
2 Likes

Yes that works

willie@gagarin:/tmp$ safe files get safe://hnyynyz47j4sfjrg78si34n19rc1rhmoysmiondi1uaxd1bz5nwx9sygssbnc
[00:00:00] [########################################] 41.27KB/41.27KB (355.89KB/s, 0s) Transfer
Done. Retrieved 1 files to .

btw, the FilesContainer requirement is doc’ed in the usage help:

$ safe files get --help | grep source
    safe files get [FLAGS] [OPTIONS] <source> [dest]
    <source>    The target FilesContainer to retrieve from, optionally including path to directory or file within
4 Likes

Aha - that’s it. Thanks @danda

4 Likes

OK - that chimes with this error


but if I try
willie@gagarin:/tmp$ safe files get safe://cdn/css/southside.css
[00:00:00] [########################################] 236B/236B (2.84KB/s, 0s) Transfer
Done. Retrieved 1 files to .

then it works fine

2 Likes

I have contemplated extending safe files get to work with immutabledata urls also, however the other subcommands of safe files all work with FilesContainer data, so it breaks the paradigm a little. anyway, It might gain that capability in the future.

6 Likes

@tfa @jlpell is correct here.

Success of command depends on which node sends the information last

This is most likely a limitation of the sans-parsec baby-fleming network. We’re already looking at a few things to be solving this without the need for a slow consensus step so hopefully will get it sorted in a fresh iteration.

We should get this noted and clarified on the latest baby-fleming network page’s known limitations. Thanks for diving in and the detail @tfa! :bowing_man:

5 Likes

Thanks.

I understand this is the answer for the second problem. And what about the first problem? (objects not duplicated on new vaults)

1 Like

That part?

As I understand it that’s likely the same issue. Only that vault having the key balance in the initial… We dont have inter-vault gossip enabled yet (and without parsec it’s not being shared in that fashion. Though not the person on this so not 100% sure TBH. @lionel.faber may be able to shed more light).

2 Likes

Any specific tests you would like run to assist in nailing this? @joshuef @tfa @lionel.faber @bochaco

1 Like

for the issues @tfa notes, there’s not much to be done at the mo in terms of testing. We’re working on some things to reenable consensus and gossip so will get sorted in another testnet iteration :+1: once we’ve that in. Thanks though @Southside!

2 Likes

Even without PARSEC, the objects (Data structs, balances etc.) should be present in all the vaults. I suspect that the vaults might not have formed a section correctly. Although looking at the commands that you have run, everything seems right.

Could you please confirm that in the vaults logs the routing table size is 7?
One more thing to look out for is the port number being used. I see that you have mentioned a port number for the genesis vault. Could you please check if the other vaults are using separate and different ports?
Thanks!

4 Likes

Yes, I confirm the routing table size is 7 and that the port numbers are all different. You can see them by scrolling the log excerpts in my post to the right: Response from: V4(192.168.1.68:NNNNN).

Okay thanks. Is it possible that you might’ve sent the create account request before the other vaults were started?

Could you try creating a fresh account and see if the same issue persists?