As of yesterday (28/05/2015 at around 13:00 GMT), we moved all census instances into read-only mode. This was not planned in advance, and therefore we were not able to give notice.
For several months, we have been having problems with the Google Spreadsheets backend that we use to store all census data. This has been discussed on the mailing list for census admins.
The problem is the way we communicate with the Spreadsheets API, and the 3rd party libraries we employ to do so.
Yesterday, a related problem appeared - one that we cannot easily work around: We use a library to connect to Google Spreadsheets via Google ClientLogin.
ClientLogin support was shutoff for Google Spreadsheets in late April 2015, and went into effect at sometime in the last 24 hours. This change hit many people, who, like us, were still using ClientLogin and were unaware of the change in service from Google.
The only way to fix this, and retain existing functionality, is to replace the 3rd party code we depend on for Google Spreadsheets, and change the authentication method we use. This is not a simple fix.
Who is effected
Every census instance is effected: Global, Regional and Local.
What we are doing about it
In order to provide an immediate solution, we changed parts of the code that require authentication, by disabling them. Essentially, that means we had to shut down all user data, and therefore, user actions: login, submit and review.
A fix for this was done and deployed to all instances within a few hours of us discovering the issue. This means that all instances are now live, but all are in read-only mode.
Going forward, we face two choices for resolving this issue:
- Refactoring the current code around auth and spreadsheet connection (which could get a little complicated due to the way we need to connect to Google Spreadsheets).
- Staying in read-only mode for around 2 weeks while we work on the larger change (which has already started) of moving all census data to a proper database.
We have currently decided on option 2, for the following reasons:
- We are getting rid of our direct dependency on Google Spreadsheets via the port to a database anyway
- If we fix the new Spreadsheets auth issue, it will take time away from our current focus on porting to a database, which we are doing to make the census more scalable and stable for future growth
We already started on the port to a proper database a week ago. We expect this to take another 2 weeks.
We are sorry for the inconvenience this causes. Please let us know your thoughts and concerns below.