Looking at events associated with a user from T210003: Deferred update causes "Retrieving hash salt for user ID failed", I see:
- 200 GET request to view the WelcomeSurvey
- 302 POST request to Special:CreateAccount
- 302 POST request to Special:WelcomeSurvey
The correct order should be
- 302 POST request to Special:CreateAccount
- 200 GET request to view the WelcomeSurvey
- 302 POST request to Special:WelcomeSurvey
To fix this, we could do one of the following:
- modify the schema to create a custom timestamp property, set this timestamp when we begin the logging process, and @nettrom_WMF can query on this timestamp instead of the one on the eventlogging capsule
- Use deferred updates in PRESEND mode for all event logging
- Use deferred updates in PRESEND mode for POST requests only
I prefer the last option.