Accept, and use, a time-offset from SD for data which SD sends to MS (posts, feedback, SD stats, etc.) #879
Labels
area: SD integration
This involves coordination with changes in SD.
status: planned
We like the idea and might get around to it at some point.
type: feature request
Requests for a new feature.
General problem: MS is not up 100% of the time, so isn't available to accept reports or feedback from SD during some periods.
While MS is down, I'd like to have SD cache the data which it's expecting to send to MS and (re)send the data when MS is back up. In order to have the creation dates for any such records (at least posts, feedback and SD stats) reflect when they actually happened, rather than when MS is back up and SD has successfully send them, the time at which they should be recorded needs to be transmitted from SD to MS and MS needs to account for the time SD says for the original transmit time when MS assigns
created_at
timestamps.In order to also account for inevitable lack of clock synchronization, I'm assuming that SD would transmit an offset value from when SD felt the data should have first been transmitted and when the data was actually transmitted (e.g. creation_offset = epoch now - epoch at time first attempted to send the report to MS).
From SD's POV, the easy way to implement caching would be to just keep a queue of HTTPS requests which SD would have sent if MS was available along with the epoch time when the request was, or wold have been, originally attempted. Once MS is back up, SD could just transmit everything that's in the queue with an additional time offset value.
The text was updated successfully, but these errors were encountered: