Git Product home page Git Product logo

likecoin-chain's Introduction

LikeCoin chain is a blockchain built on the Cosmos SDK. Project page: https://like.co/

Requirements

  • Go 1.19

For development.

LikeCoin chain support ignite cli (previously called starport). Please follow instructions to install here

Please use ignite v0.24.x due to protobuf generation issue

After installation, run ignite chain serve

It will bring up the local dev chain with hot-reload.

Setting up a mainnet node

Please refer to the Setup a node

likecoin-chain's People

Contributors

elise-ng avatar faddat avatar hochiw avatar leafwind avatar nnkken avatar pysel avatar rickmak avatar weijun0827 avatar williamchong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

likecoin-chain's Issues

Node crashes every 1000 blocks with consensus failure error.

Dec 08 03:02:26 cyber liked[867908]: 3:02AM ERR CONSENSUS FAILURE!!! err="unable to delete version 1568000 with 1 active readers" module=consensus stack="goroutine 688 [running]:\nruntime/debug.Stack()\n\t/usr/lib/go/src/runtime/debug/stack.go:24 +0x65\ngithub.com/tendermint/tendermint/consensus.(*State).receiveRoutine.func2()\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:726 +0x4c\npanic({0x171ad40, 0xc0137922e8})\n\t/usr/lib/go/src/runtime/panic.go:1038 +0x215\ngithub.com/cosmos/cosmos-sdk/store/rootmulti.(*Store).pruneStores(0xc000510320)\n\t/home/cyber/go/pkg/mod/github.com/cosmos/[email protected]/store/rootmulti/store.go:388 +0x1b6\ngithub.com/cosmos/cosmos-sdk/store/rootmulti.(*Store).Commit(0xc000510320)\n\t/home/cyber/go/pkg/mod/github.com/cosmos/[email protected]/store/rootmulti/store.go:362 +0x175\ngithub.com/cosmos/cosmos-sdk/baseapp.(*BaseApp).Commit(0xc0013ffa00)\n\t/home/cyber/go/pkg/mod/github.com/cosmos/[email protected]/baseapp/abci.go:305 +0x22e\ngithub.com/tendermint/tendermint/abci/client.(*localClient).CommitSync(0xc001039680)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/abci/client/local_client.go:258 +0xb6\ngithub.com/tendermint/tendermint/proxy.(*appConnConsensus).CommitSync(0x0)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/proxy/app_conn.go:93 +0x22\ngithub.com/tendermint/tendermint/state.(*BlockExecutor).Commit(_, {{{0xb, 0x0}, {0xc009c57c59, 0x7}}, {0xc009c5dd58, 0x12}, 0x1, 0x17ed6e, {{0xc029b64be0, ...}, ...}, ...}, ...)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/state/execution.go:228 +0x269\ngithub.com/tendermint/tendermint/state.(*BlockExecutor).ApplyBlock(_, {{{0xb, 0x0}, {0xc009c57c59, 0x7}}, {0xc009c5dd58, 0x12}, 0x1, 0x17ed6e, {{0xc029b64be0, ...}, ...}, ...}, ...)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/state/execution.go:180 +0x6ee\ngithub.com/tendermint/tendermint/consensus.(*State).finalizeCommit(0xc0000e6a80, 0x17ed6e)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1635 +0x9fd\ngithub.com/tendermint/tendermint/consensus.(*State).tryFinalizeCommit(0xc0000e6a80, 0x17ed6e)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1546 +0x305\ngithub.com/tendermint/tendermint/consensus.(*State).enterCommit.func1()\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1481 +0x87\ngithub.com/tendermint/tendermint/consensus.(*State).enterCommit(0xc0000e6a80, 0x17ed6e, 0x0)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1519 +0xc06\ngithub.com/tendermint/tendermint/consensus.(*State).addVote(0xc0000e6a80, 0xc01dac6500, {0xc00a7282a0, 0x28})\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:2132 +0xb6e\ngithub.com/tendermint/tendermint/consensus.(*State).tryAddVote(0xc0000e6a80, 0xc01dac6500, {0xc00a7282a0, 0xc00ddc8ea0})\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1930 +0x2c\ngithub.com/tendermint/tendermint/consensus.(*State).handleMsg(0xc0000e6a80, {{0x1d0e220, 0xc010a8ba08}, {0xc00a7282a0, 0x0}})\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:838 +0x3dc\ngithub.com/tendermint/tendermint/consensus.(*State).receiveRoutine(0xc0000e6a80, 0x0)\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:762 +0x419\ncreated by github.com/tendermint/tendermint/consensus.(*State).OnStart\n\t/home/cyber/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:378 +0x12f\n"

Then run normally after we restart the node.

Add Slack app to repo

Hello.

We would like to get notifications of upcoming releases.

It would be a massive help if we could do it through Github's Slack integration.

Could you kindly install it?

Thank you

scripts/build.sh Error

developer@wzserver:~/LikeCoin/likecoin-chain$ sudo ./scripts/build.sh
Sending build context to Docker daemon 224.8kB
Step 1/8 : FROM golang:1.13-alpine
---> 3369136a43d1
Step 2/8 : RUN apk update && apk add --no-cache build-base git bash curl linux-headers ca-certificates
---> Using cache
---> c06bfc214182
Step 3/8 : WORKDIR /
---> Using cache
---> 9b5e55540b7b
Step 4/8 : RUN mkdir -p ./likechain
---> Using cache
---> ca6039eef936
Step 5/8 : COPY ./go.mod ./likechain/go.mod
---> Using cache
---> 4c5559cb9339
Step 6/8 : COPY ./go.sum ./likechain/go.sum
---> Using cache
---> a26a742ed7f0
Step 7/8 : WORKDIR /likechain
---> Using cache
---> 741f4697159e
Step 8/8 : RUN go mod download
---> Running in 72b45328e8d4
go: github.com/btcsuite/[email protected]: Get https://proxy.golang.org/github.com/btcsuite/btcd/@v/v0.0.0-20191010011042-988181ef23fa.mod: dial tcp 216.58.200.241:443: i/o timeout
The command '/bin/sh -c go mod download' returned a non-zero code: 1

Set Docker Proxy HTTP& HTTPS failed

Failed to `Setup LikeCoin chain mainnet node`

I follow the steps as https://github.com/likecoin/likecoin-chain/wiki/Setup-LikeCoin-chain-mainnet-node
And I found that, the output of docker-compose logs is:

Attaching to likechain_liked
likechain_liked | getting external IP address
likechain_liked | Got external IP: 167.172.206.151
likechain_liked | p2p.external_address = tcp://167.172.206.151:26656
likechain_liked | I[2020-03-16|04:59:18.719] starting ABCI with Tendermint                module=main
likechain_liked | ERROR: error during handshake: error on replay: validator set is nil in genesis and still empty after InitChain

I guess that:
We should add a step before docker-compose up -d, similar to

After step 1, a Cosmos address for the validator will be initialized. Send the address to us and we will send some token into the account for staking.

which is described in https://github.com/likecoin/likecoin-chain/blob/master/README.md

My address is cosmos1fczdv93strevfmvc3fyv3zyrmckcnn2pvuvqul

Best wishes!

Node go down after "too many open files" and won't recover nor crash

Attached logs, it appears my setting for open file is not well tune. It leads to too many openfiles error than a consenus failure. It can't recover itself, which is fine, if it crash itself. The problem is that the software is not crash itself nor recover itself. Therefor, systemd is not regards it as down, so the software is up and running and do nothing.

Provided it does not crash, any suggested way to handle it? i.e. how to detect such failure.

Sep 05 15:17:29 fotan-likecoin liked[522]: 3:17PM ERR CONSENSUS FAILURE!!! err="can't get node F845F93348CD781977344A4423DB29149C7FCE03F9183BBD6AFB2F25E809921F: open /home/fotan/.liked/data/application.db/8390493.ldb: too many open files" module=consensus stack="goroutine 601 [running]:
runtime/debug.Stack(0xc015937c08, 0x1994aa0, 0xc008041580)
        /usr/lib/go-1.16/src/runtime/debug/stack.go:24 +0x9f
github.com/tendermint/tendermint/consensus.(*State).receiveRoutine.func2(0xc000156380, 0x1ea6df8)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:726 +0x5b
panic(0x1994aa0, 0xc008041580)
        /usr/lib/go-1.16/src/runtime/panic.go:965 +0x1b9
github.com/cosmos/iavl.(*nodeDB).GetNode(0xc000c8bbc0, 0xc00b0f9920, 0x20, 0x20, 0x0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/nodedb.go:88 +0x779
github.com/cosmos/iavl.(*Node).getRightNode(...)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:428
github.com/cosmos/iavl.(*Node).get(0xc00d7be820, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0x1, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:175 +0x2f6
github.com/cosmos/iavl.(*Node).get(0xc00d7be0a0, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0xffffffffffffffff, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:176 +0x273
github.com/cosmos/iavl.(*Node).get(0xc010283b80, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0xffffffffffffffff, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:173 +0x1af
github.com/cosmos/iavl.(*Node).get(0xc0102835e0, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0xffffffffffffffff, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:173 +0x1af
github.com/cosmos/iavl.(*Node).get(0xc010283540, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0xffffffffffffffff, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:173 +0x1af
github.com/cosmos/iavl.(*Node).get(0xc0102834a0, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0x1, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:173 +0x1af
github.com/cosmos/iavl.(*Node).get(0xc010283400, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0xffffffffffffffff, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:176 +0x273
github.com/cosmos/iavl.(*Node).get(0xc010283360, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0x1, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:173 +0x1af
github.com/cosmos/iavl.(*Node).get(0xc0102832c0, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0x1, 0xc000cbcbd0, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:176 +0x273
github.com/cosmos/iavl.(*Node).get(0xc0102830e0, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0xffffffffffffffff, 0x40946b, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:176 +0x273
github.com/cosmos/iavl.(*Node).get(0xc0102821e0, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0xffffffffffffffff, 0x20, 0xc000c8bbc0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:173 +0x1af
github.com/cosmos/iavl.(*Node).get(0xc00c3699a0, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x1d, 0x1, 0x28, 0x30)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:173 +0x1af
github.com/cosmos/iavl.(*Node).get(0xc00c369860, 0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x30, 0x19a2ce0, 0xc02128be01, 0xc00a23af00)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/node.go:176 +0x273
github.com/cosmos/iavl.(*ImmutableTree).Get(0xc009198198, 0xc00c904990, 0x1d, 0x30, 0x0, 0x0, 0x0, 0x0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/immutable_tree.go:152 +0x5a
github.com/cosmos/cosmos-sdk/store/iavl.(*Store).Get(0xc000bc1dd0, 0xc00c904990, 0x1d, 0x30, 0x0, 0x0, 0x0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:172 +0x166
github.com/cosmos/cosmos-sdk/store/cache.(*CommitKVStoreCache).Get(0xc0014c7320, 0xc00c904990, 0x1d, 0x30, 0x2d01620, 0x0, 0x30)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/store/cache/cache.go:111 +0x11e
github.com/cosmos/cosmos-sdk/store/cachekv.(*Store).Get(0xc0097f31d0, 0xc00c904990, 0x1d, 0x30, 0x0, 0x0, 0x0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/store/cachekv/store.go:64 +0x2b0
github.com/cosmos/cosmos-sdk/store/gaskv.(*Store).Get(0xc0043db020, 0xc00c904990, 0x1d, 0x30, 0x0, 0x0, 0x0)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/store/gaskv/store.go:41 +0x198
github.com/cosmos/cosmos-sdk/x/slashing/keeper.Keeper.GetValidatorMissedBlockBitArray(0x2097a48, 0xc000cfcb50, 0x20c6f18, 0xc000cc0e60, 0x20c1a58, 0xc000c80580, 0x20b55c0, 0xc000085080, 0x20b1a68, 0xc000040090, ...)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/x/slashing/keeper/signing_info.go:60 +0x11d
github.com/cosmos/cosmos-sdk/x/slashing/keeper.Keeper.HandleValidatorSignature(0x2097a48, 0xc000cfcb50, 0x20c6f18, 0xc000cc0e60, 0x20c1a58, 0xc000c80580, 0x20b55c0, 0xc000085080, 0x20b1a68, 0xc000040090, ...)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/x/slashing/keeper/infractions.go:36 +0x5b2
github.com/cosmos/cosmos-sdk/x/slashing.BeginBlocker(0x20b1a68, 0xc000040090, 0x20c6928, 0xc00a9effc0, 0xb, 0x0, 0xc00d1bed08, 0x12, 0x3da6b, 0x12350f6, ...)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/x/slashing/abci.go:23 +0x265
github.com/cosmos/cosmos-sdk/x/slashing.AppModule.BeginBlock(...)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/x/slashing/module.go:164
github.com/cosmos/cosmos-sdk/types/module.(*Manager).BeginBlock(0xc0000bf2d0, 0x20b1a68, 0xc000040090, 0x20c6928, 0xc00a9effc0, 0xb, 0x0, 0xc00d1bed08, 0x12, 0x3da6b, ...)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/types/module/module.go:338 +0x1d8
github.com/likecoin/likechain/app.(*LikeApp).BeginBlocker(...)
        /home/fotan/likecoin-chain/app/app.go:417
github.com/cosmos/cosmos-sdk/baseapp.(*BaseApp).BeginBlock(0xc000d53040, 0xc011ef3760, 0x20, 0x20, 0xb, 0x0, 0xc00d1bed08, 0x12, 0x3da6b, 0x12350f6, ...)
        /home/fotan/go/pkg/mod/github.com/cosmos/[email protected]/baseapp/abci.go:191 +0x7b8
github.com/tendermint/tendermint/abci/client.(*localClient).BeginBlockSync(0xc000c38240, 0xc011ef3760, 0x20, 0x20, 0xb, 0x0, 0xc00d1bed08, 0x12, 0x3da6b, 0x12350f6, ...)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/abci/client/local_client.go:274 +0xfa
github.com/tendermint/tendermint/proxy.(*appConnConsensus).BeginBlockSync(0xc000c70eb0, 0xc011ef3760, 0x20, 0x20, 0xb, 0x0, 0xc00d1bed08, 0x12, 0x3da6b, 0x12350f6, ...)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/proxy/app_conn.go:81 +0x75
github.com/tendermint/tendermint/state.execBlockOnProxyApp(0x20b2670, 0xc000f141e0, 0x20bdb28, 0xc000c70eb0, 0xc0039a21e0, 0x20c6ac8, 0xc000c117e0, 0x1, 0xc0022bdfc0, 0x20, ...)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/state/execution.go:307 +0x51b
github.com/tendermint/tendermint/state.(*BlockExecutor).ApplyBlock(0xc000ccb650, 0xb, 0x0, 0xc000c8efe0, 0x7, 0xc001d7fb60, 0x12, 0x1, 0x3da6a, 0xc0022bdfc0, ...)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/state/execution.go:140 +0x168
github.com/tendermint/tendermint/consensus.(*State).finalizeCommit(0xc000156380, 0x3da6b)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1635 +0xb48
github.com/tendermint/tendermint/consensus.(*State).tryFinalizeCommit(0xc000156380, 0x3da6b)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1546 +0x428
github.com/tendermint/tendermint/consensus.(*State).enterCommit.func1(0xc000156380, 0xc000000000, 0x3da6b)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1481 +0x8e
github.com/tendermint/tendermint/consensus.(*State).enterCommit(0xc000156380, 0x3da6b, 0x0)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1519 +0x6be
github.com/tendermint/tendermint/consensus.(*State).addVote(0xc000156380, 0xc00fd53e00, 0xc0014a5b30, 0x28, 0x1ea91e0, 0xc01593fc08, 0x1784839)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:2132 +0xde5
github.com/tendermint/tendermint/consensus.(*State).tryAddVote(0xc000156380, 0xc00fd53e00, 0xc0014a5b30, 0x28, 0xc0031da900, 0xc0031dc120, 0xc04555c25e439495)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:1930 +0x56
github.com/tendermint/tendermint/consensus.(*State).handleMsg(0xc000156380, 0x2078640, 0xc00fb75520, 0xc0014a5b30, 0x28)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:838 +0x8cd
github.com/tendermint/tendermint/consensus.(*State).receiveRoutine(0xc000156380, 0x0)
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:762 +0x3f2
created by github.com/tendermint/tendermint/consensus.(*State).OnStart
        /home/fotan/go/pkg/mod/github.com/tendermint/[email protected]/consensus/state.go:378 +0x8c5

Discussion: drop of develop branch

Currently, I am very confuse on the master vs develop branch. It looks no specific development workflow.

If no objection, I will delete the develop branch and all change target for the next release should send PR to master.

For feature development, let keep current convention of prefix with feat which is clear.

For patch we need to release to existing chain, we should patch the current master too. So of the nature of the blockchain, we will only keep one production branch, which is codename, like current sheungwan, fotan.

@williamchong @nnkken thought?

Initialization failed

HI. I use this manual to run a node. I built image and downloaded genesis.json. But when I run init script:

[~/likecoin-chain] > sudo ./scripts/init.sh airled genesis.json [email protected]:26656
Unable to find image 'likechain/likechain:sheungwan' locally
docker: Error response from daemon: pull access denied for likechain/likechain, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.

Seems like script tries to run incorrect image.

Production build fail on Ubuntu Mate (running on RPi 3+)

Sending build context to Docker daemon  625.2kB
Step 1/9 : FROM likechain/golang as builder
 ---> 7d1bc4ac7ee9
Step 2/9 : COPY . ./abci
 ---> Using cache
 ---> a0e665a79624
Step 3/9 : RUN go build -a -o /bin/likechain/abci abci/cmd/abci/main.go
 ---> Running in a62a67fdf36c
Removing intermediate container a62a67fdf36c
 ---> b5871b357c52
Step 4/9 : RUN go build -a -o /bin/likechain/api abci/cmd/api/main.go
 ---> Running in 91416ca127cf
# command-line-arguments
/usr/local/go/pkg/tool/linux_arm/link: running gcc failed: fork/exec /usr/bin/gcc: cannot allocate memory

The command '/bin/sh -c go build -a -o /bin/likechain/api abci/cmd/api/main.go' returned a non-zero code: 2
Sending build context to Docker daemon  1.591MB
Step 1/9 : FROM likechain/golang as builder
 ---> 7d1bc4ac7ee9
Step 2/9 : COPY ./services ./services
 ---> Using cache
 ---> 7d35e163113e
Step 3/9 : COPY ./abci ./abci
 ---> Using cache
 ---> 7313a2317026
Step 4/9 : RUN go build -a -o /bin/likechain/like_service services/main.go
 ---> Running in 444441b903cd
# command-line-arguments
/usr/local/go/pkg/tool/linux_arm/link: running gcc failed: fork/exec /usr/bin/gcc: cannot allocate memory

The command '/bin/sh -c go build -a -o /bin/likechain/like_service services/main.go' returned a non-zero code: 2
daaab@dab-ubuntu-gold:~/likechain$ 

Full log: https://pastebin.com/a7wcYFDp

Instability with connectivity

Hi, I'm Jacob from Notional!

I guess that you've mainly been working with my colleague Long, and I wanted to tell you about an issue we've been having.

Basically, Likecoin likes to go down, and stay that way. I think that as a stopgap measure, we could resolve this by adding p2p persistent peers, but docs only refer to seeds for the time being.

Secondly, I'd like to recommend that you no longer ship a docker container as a default config, because those tend to add to complexity and can harm stability.

Decentralization is key for the further development of social tech, and I appreciate your work!

<3
-Jacob

Upgrade dependency "github.com/tendermint/tm-db"

It seems that likecoin/likecoin-chain directly depends on github.com/tendermint/[email protected]. But module github.com/tendermint/tm-db at version v0.6.6 uses replace directive to replace dependency github.com/tecbot/gorocksdb with github.com/roysc/gorocksdb.

https://github.com/likecoin/likecoin-chain/blob/master/go.mod#L21

github.com/tendermint/tm-db v0.6.6

https://github.com/tendermint/tm-db/blob/v0.6.6/go.mod(line 12&22)

github.com/tecbot/gorocksdb v0.0.0-20191217155057-f0fad39f321c
replace github.com/tecbot/gorocksdb => github.com/roysc/gorocksdb v1.1.1

According to Go Modules wikis, replace directives in modules other than the main module are ignored when building the main module.
It means such replace usage in dependency's go.mod cannot be inherited when building main module. And it turns out that likecoin/likecoin-chain indirectly relies on github.com/tecbot/gorocksdb, which is different from the replaced dependency tendermint/tm-db needed.

https://github.com/likecoin/likecoin-chain/blob/master/go.mod#L118

github.com/tecbot/gorocksdb v0.0.0-20191217155057-f0fad39f321c // indirect

To avoid such inconsistency, the best approach is bumping the version of github.com/tendermint/tm-db since the latest release(v0.6.7) of github.com/tendermint/tm-db has eliminated the replace usage in go.mod.

Upgrade to Cosmos 0.44

As Cosmos SDK v0.42 reaching EOL (ref: https://twitter.com/cosmos/status/1491333574800572416). It means the SDk won't receive any security updates. We plan to update the Cosmos SDK 0.44. It also pave the path to future adoption of x/nft interface which will come at 0.46.

General guide can be find at Migration Guide and Module Migrate Guide

Notable issue we need a separate task to confirm or work on :

  • Update of chain code to migrate from x/ibc to ibc-go
  • Review iscn store on confirming weather in-place store migration is need.
  • Removal of the old migration gensis command

Notable reference for dev to see did we conform are we following idiomatic way of doing thing in the community.

Changes for PR #18, #19, #20, #22, #23

#18

  • Typo: beginnine -> beginning
  • Check length in the identifier constructor for []byte, not in the string version
  • Use response.Success.Code instead of hardcode 0 in checking success (DeliverTx)
  • Don't burn the fee if not distributing to validators
  • Add comment to explain tx.From = senderID in withdraw

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.