Datastores: Automatic Retry



Try taking a look at the Datastore budget charts in the developer console. It uses the same numbers numbers as the GetRequestBudgetForRequestType that SteadyOn mentions. As for errors on Datastores…

These will be returned as error codes accompanied by a message. You can reliably parse out the error code to handle those specific cases if you want. I wouldn’t try comparing against the messages since those are subject to change if we decide the messaging needs more clarity.


That page should be linked/included somewhere else, I did not know of its existence and it seems useful (cc @UristMcSparks)


Hm, it looks like there’s an issue with the link, but if you search up “Datastore errors” on the wiki, you should be able to find the correct page.


I’ve added it as a small (but obvious) section to the “Data store” page now:
(which is what GetAsync/etc link to under their ‘See Also’ as “DataStore Manual”)


Was it ever turned on again? I’m coding a data system and for now I’m adding my own auto-retry system because there never was another statement regarding this


This seems like unusually bad communication from Roblox. I had no idea this feature was turned on at all, and by the looks of it no one added a message saying it was on.

Good practices for datastorage?

No, this feature was shelved because higher priorities came up. When priorities realign, we’ll definitely take a look at this again.


Just to clarify, datastore retries is currently not turned on.

Good practices for datastorage?

Hi there,

Is this feature still turned off, if so can we expect a ‘On’ soon :wink:


Yeah could we have an update on this?\


We currently have some higher priority features to finish up first, but once we are wrapped up, we’ll see if we can fit autoretry datastores back into our queue.

Strange DataStore CURL error causing DataStore service to fail most, if not all, of the time across many games

Gonna bump this again, because I can query the property and it returns true, and thus I thought it was on. It’s documented on the RobloxDev site as a feature, which is very misleading if it’s not actually on.


It’s been 2 years, is this on yet? (Accidentally replied)


What if a player leaves and it continues to auto-retry getting their data? I’m not sure if this feature is the right solution. Perhaps some Async methods should have alternatives that use callbacks/connections.


I agree, I would probably prefer an article on the hub/forum where an engineer gives advice and code examples on effective retry/back-off mechanisms, or the callbacks as you suggest. Then we can choose to implement or forego it on certain requests without making all of the datastore API less predictable / harder to understand the behavior of requests.


In general, I believe it’s better to create your own retry function.

This way, your code can check itself weather it needs to cancel the request.
e.g. Player Left