Web: standardbounties: where do we store info that's not in the bounty detail spec?

Created on 17 Jan 2018  路  8Comments  路  Source: gitcoinco/web

should we be storing information that's missing from the database (like the githubusername, expereience level required... etc) in this JSON blob? its got to go somewhere..

https://github.com/gitcoinco/web/pull/140#discussion_r160816196

All 8 comments

That data is all being stored in the database. We can store it in IPFS as well but I'm always hesitant to store data redundantly in two places, it will inevitably get out of sync at some point, and then need to figure out which dataset to use. I mentioned this in another issue but at some point a decision needs to be made whether we want to use IPFS/blockchain or Postgres as our source of truth. In the meantime, most of the data is stored in Postgres, the blockchain is just there to handle the transactions really.

Another solution is to store the "truth" data all in IPFS, and the database is dumb to everything. Then the application would need to pull down the JSON blob to get the issue details for example.

i think that treating IPFS as the source of truth makes sense to me... and then teh database is a dumb proxy. onboard with that approach

ok this one is going to be a bit more of a change. Currently I'm setting the database tables in python to match up with what is send to web3, but not really using IPFS for much.

I think the consensys here is that we should be only writing to IPFS directly, and have the database sync off of that.

This is going to require probably a new python method or two. I was thinking this might be the right approach:

https://github.com/ipfs/py-ipfs-api

Basically make a backend method that accepts a JSON object, it then updates the right location in IPFS and returns a hash.

Currently this is done on the front-end in Javascript. But since we want the database tables to sync off of IPFS, I think it makes the most sense to move it into the Python code. @mbeacom @owocki thoughts?

This is fixed, pending the finalization of the IPFS schema. Everything is being stored in IPFS, and then the database is just syncing.

https://github.com/ConsenSys/StandardBounties/issues/21

just bumped @mbeylin on updating the docs.. not sure if that blocks this though

I suppose it does block this issue. Its working with the current format that is in there, should be trivial to change to using the new schema.

I think this one can be closed.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ghost picture ghost  路  3Comments

uluhonolulu picture uluhonolulu  路  3Comments

kuhnchris picture kuhnchris  路  4Comments

mbeacom picture mbeacom  路  4Comments

owocki picture owocki  路  4Comments