uzh / marugoto

Marugoto: eLearning Framework for Story Telling
GNU General Public License v2.0
8 stars 6 forks source link

Asynchronous processing v.s. state update #46

Closed witlox closed 4 years ago

witlox commented 5 years ago

While having a 'slow' connection between the front-end and back-end, a user can for example click on 'send email' multiple times before receiving a state update on the front end. This can result in receiving a mail 10 times. This may also be related to 'not being able to transition' to a new page, if the state update is very slow.

Can we throttle the connection between the backend and frontend to check when this actually occurs? is it due to a backend processing delay, or an actual connection lag?

christian-bernet commented 5 years ago

For mail reply If you slow down the backend speed for example for the mail reply it results in having 10 times the mail reply in the inbox. We need to change the frontend, so that it will only place on request and not more!

zlaxi commented 5 years ago

https://github.com/uzh/marugoto-frontend/commit/39a7adcc656c0ac98a5dc27070857a929696ae24

christian-bernet commented 5 years ago

Ok. That works now also.

martindusinberre commented 5 years ago

@lfeine @Helena-LiT Please test this now.

martindusinberre commented 5 years ago

I will close #36 in the meantime. If there's still a problem, please reopen #36 too.

martindusinberre commented 5 years ago

And I'm closing #37 too. Please check that the page transition on 2.4.5.1.1.2 is working and reopen #37 if not.

martindusinberre commented 5 years ago

Is this related to #70 too?

martindusinberre commented 5 years ago

@witlox @interrogator I'm not convinced this is fixed: I had problems transitioning off pages yesterday even though I had a pretty good internet connection and wasn't playing particularly fast. (hence the #70, which I've now closed because I don't think it's a bug.) Can you advise what could be done? Are you guys having the same problem too?

yaslena commented 5 years ago

I had problems transitioning off pages last week, but I think this was only temporary and due to updates being done while I was playing or something of the sort. I especially had problems with pages that had timed dialogues (like 2.4.1.3.1.2 and 2.4.1.3.1.4) but all of that seems to be solved now. Anyway, this issue is not something that I can actively test, since I cannot know when updates are being made.

I also can't transition from page 2.4.5.1.1.2 and I think there is a little mistake in the transition json there. I will reopen #37 and write my comments in that issue.

christian-bernet commented 4 years ago

Just to clarify: We have different problems that are discussed in this issue. I think this issue is only about the "multiple backend calls" as described below. The "problems after second import" as described below should be reported in issue https://github.com/uzh/marugoto/issues/21.

multiple backend calls First thing we have, is that if you click multiple times for example on a page transition and that resulted in multiple status updates in the backend. I tested it today again and it still gives two request with firefox on https://marugoto.s3it.uzh.ch in the demo topic at page "Text Exercise functional testing -contains" (page 7). @zlaxi can you please check that again.

image

problems after second import Second thing is, that we have some problem which are coming from the importer. At some point, there are some problems after importing a topic a second time. For example if a certain page transition does not work or an email will be generated twice.

how can I distinguish between this two things Multiple backend calls are the result of fast actions or a slow internet connection and are not reproducible when you play the same situation a second time for example but doing slow. Problems after second import are permanent and reproducible even if you play it slow. They disappear only after the importer was running.

christian-bernet commented 4 years ago

I tested it today again and I can not reproduce it i a static way. I only have it once today in firefox and only if you click really really fast. We tried to slow down the internet connection and there is no problem happens any more. So we leave it as it is for now, because it looks good.

martindusinberre commented 4 years ago

Great, thank you.