This is going to be a short update about activities for last couple of weeks. Main progress was done around Backend and API for Blockchain - opendb project.
Done (merged and tested):
- New atomic edit API. It consumes much less traffic and tested to work with million changes a day.
- Voting process builtin in Blockchain. So, there is a special validation and special mechanism to vote on each operation going to blockchain. We decided to build it in a generic way and in blockchain itself, so every action could be votable and though rules how to vote and counts could be justified for specific operations
- History API (+ Page in Admin console). So, now we have a full history indexed and it is possible to retrieve full object history or retrieve operations created by user. It is an important API, once we go live.
- Extra coverage and tests around deleting objects. We’ve discovered 1 issue and decided to retest everything and clean some code. So, now we are sure that code is under good coverage.
Pending merges ( going to be merged early next week):
- Custom API and index, so blockchain will provide API out of the box to query objects by secondary id (by OSM id) or by type (restaraunt, cafe, etc).
- Extra tests for voting process.
Short plans (1-2 week):
- Starting from Monday, we’re going to get back to the task importing and synchronizing with OpenStreetMap data. We’ve already been trying to import but discover some speed issues. Our target to make full import in 8 hours, it is important to keep it as low as possible cause it will be time as well for 1st replication. We already have experience, so now we hope it will be under control.
- Preparing client-side API to be integrated with OsmAnd.
The good news that we don’t have any pending changes for Blockchain project itself and now we can fully switch and dedicate to the tasks purely related to OpenPlaceReviews: geography, OpenStreetMap synchronization and so on.
Congratulations to the team for successfully finishing generic part of the blockchain.