Interesting!
- Do you have some metrics for TTFB regarding reads?
- Does it take that long for all write operations, or just the immutables? E.g. in the docs, there is no mention of a time one has to wait for writing to a scratchpad
Interesting!
Uhm the post you’re referencing is roughly 1 month old - that data is completely outdated…
Tbh I have no idea how fast immutable reads are… They’re fast enough to not care to me..
Reads on Scratchpads typically seem to be around 500ms for me here.
Writes seem to average around 5s…
Everything including a payment (immutable writes, creating a mutable) does take 15+ seconds I think..
Are the scratchpad tests you shared a couple of months back still valid?
Results are mixed but generally >18 s
(venv) willie@gagarin:~/projects/maidsafe/scratch-perf-test$ python3 speedtest-riddim.py
Scratchpad-Update time: 18.92 seconds
population time: 0.69 seconds
iterations: 1 - content: b'\xa0)\t\x00s\xb9\xc4G\xb0\xeb'...
error on scratchpad update - time to error: 0.58 seconds
error on scratchpad update - time to error: 0.57 seconds
error on scratchpad update - time to error: 0.58 seconds
error on scratchpad update - time to error: 0.57 seconds
error on scratchpad update - time to error: 35.54 seconds
error on scratchpad update - time to error: 0.57 seconds
error on scratchpad update - time to error: 0.57 seconds
error on scratchpad update - time to error: 0.57 seconds
Scratchpad-Update time: 4.92 seconds
error fetching scratchpad
error fetching scratchpad
population time: 1.86 seconds
iterations: 1 - content: b'Z]\r\x7f\x1dBT\xa8\x96\xe6'...
Scratchpad-Update time: 2.38 seconds
population time: 0.69 seconds
iterations: 1 - content: b'2\x08Y}\x00\x8dc;\xb6\xa2'...
Scratchpad-Update time: 3.79 seconds
population time: 0.79 seconds
iterations: 1 - content: b'1\xbd^\x01\x9e\x16\xc4\xa6y!'...
Scratchpad-Update time: 19.04 seconds
error fetching scratchpad
error fetching scratchpad
population time: 2.13 seconds
iterations: 1 - content: b'\x080\xe9\x81;\x90r(;\xf2'...
Scratchpad-Update time: 26.84 seconds
population time: 0.67 seconds
iterations: 1 - content: b'\xb0}\t\xbf\xa4\x89\x93\xe1W\x8b'...
Scratchpad-Update time: 5.12 seconds
error fetching scratchpad
error fetching scratchpad
error fetching scratchpad
error fetching scratchpad
population time: 2.95 seconds
iterations: 1 - content: b'\x1bW\xd5\x03l7\xbd\xe3\x03|'...
error on scratchpad update - time to error: 0.58 seconds
Scratchpad-Update time: 18.54 seconds
error fetching scratchpad
error fetching scratchpad
population time: 1.84 seconds
iterations: 1 - content: b'\xf2p(\x13\xe6HD\xf7]\\'...
Scratchpad-Update time: 18.25 seconds
population time: 0.82 seconds
iterations: 1 - content: b'~\x14\xc0\xec\xa1\xe3gf1\x13'...
Scratchpad-Update time: 2.41 seconds
error fetching scratchpad
error fetching scratchpad
error fetching scratchpad
error fetching scratchpad
error fetching scratchpad
error fetching scratchpad
error fetching scratchpad
population time: 5.04 seconds
iterations: 1 - content: b'\x90k\x90Sk\x15\xe2\x06\xa1Y'...
Did you update to current version of the python libs?
pip install --upgrade autonomi-client
(or is it update here?)
Oh, so one actually has actively to wait this long for a write to succeed?
E.g. a user in my frontend is im a hurry, does something in my app that triggers a write to a scratchpad and then quits the app after 2 seconds.
Does that mean the write will not succeed, as the user didn’t wait the 5 seconds?
It depends whether you are using AntTP (as per topic) or a different platform.
The scratchpad stuff above is unrelated to AntTP.
AntTP itself wraps mutable changes in caches. As it can operate in offline mode, I want to make the reponse instant, then sync in the background (once autonomi libs 0.6.0 issues are resolved).
Right now, mutable reponses are cached. If the data is more than 5 seconds old (configurable), then it will lookup async and the next get will return that value immediately.
(For the python scratchpad stuff, it would be better in another thread? @moderators could you help, please?)