I am developing an application using Hyperledger Fabric and I have built the Node.js client that exposes the API to make calls to the blockchain, which is up with the startFabric.sh script.
I am using CouchDB and all of the dockers that we need. I have only 1 peer, so 1 node in my network. This is a very simple one.
I thought that having a Blockchain with Hyperledger makes my data persistent. But I modified data inside CouchDB and if I query the ledger I get the modified data. How is it possible? This is not a Blockchain.
Can anyone explain?
Here is what I did in order to let you better understand the problem. I have created my Entity invoking the API, the result from the blockchain is that the transaction has been submitted: https://i.imgur.com/0gjtCAw.png
And in fact, if I use the query API to get this entity, I receive this: https://i.imgur.com/T70xiWU.png
But we can check it also on the blockchain since I have the docker in log mode: https://i.imgur.com/duQdbL5.png So, until here, everything seems fine.
Now I open CouchDb and I see that my data are stored here: https://i.imgur.com/dQTF6Lj.png
I open the entity Try2 and I modify the Owner and Location parameters, then I save: https://i.imgur.com/VfZY3yi.png
This should not be possible inside a blockchain. I am modifying data and no new transaction have been done, so how this is possible?
If I query the blockchain now, I get my modified data: https://i.imgur.com/OK72vx6.png
Am I missing some point or this should not be possible to do inside a blockchain?