Giter VIP home page Giter VIP logo

metad's People

Contributors

chai2010 avatar jolestar avatar jolestar-yunify avatar martinyunify 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

Watchers

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

metad's Issues

fatal error: concurrent map read and map write

metad v1.0.1

fatal error: concurrent map read and map write

goroutine 177 [running]:
runtime.throw(0xbaafdd, 0x21)
/home/travis/.gimme/versions/go1.7.linux.amd64/src/runtime/panic.go:566 +0x95 fp=0xc420327490 sp=0xc420327470
runtime.mapaccess2_faststr(0xaaa000, 0xc42023b380, 0xc4204675ed, 0xe, 0xc4202e0088, 0x1)
/home/travis/.gimme/versions/go1.7.linux.amd64/src/runtime/hashmap_fast.go:306 +0x52b fp=0xc4203274f0 sp=0xc420327490
github.com/yunify/metad/store.(*store).internalGet.func1(0xc4202c4500, 0xc4204675ed, 0xe, 0xc4202c4500)
/home/travis/gopath/src/github.com/yunify/metad/store/store.go:207 +0x5c fp=0xc420327530 sp=0xc4203274f0
github.com/yunify/metad/store.(*store).walk(0xc420145740, 0xc4204675e0, 0x1b, 0xbe73f8, 0x1b)
/home/travis/gopath/src/github.com/yunify/metad/store/store.go:153 +0xad fp=0xc420327590 sp=0xc420327530
github.com/yunify/metad/store.(*store).internalGet(0xc420145740, 0xc4204675e0, 0x1b, 0x1b)
/home/travis/gopath/src/github.com/yunify/metad/store/store.go:215 +0x4b fp=0xc4203275c8 sp=0xc420327590
github.com/yunify/metad/store.(*store).Get(0xc420145740, 0xc420467560, 0x1b, 0x2b, 0x0, 0x0)
/home/travis/gopath/src/github.com/yunify/metad/store/store.go:62 +0x158 fp=0xc420327630 sp=0xc4203275c8
github.com/yunify/metad/metadata.(*MetadataRepo).getMappingData(0xc420143090, 0xb940be, 0x1, 0xc420467520, 0x1b, 0xc420467520, 0x1b)
/home/travis/gopath/src/github.com/yunify/metad/metadata/metarepo.go:222 +0xbb fp=0xc420327690 sp=0xc420327630
github.com/yunify/metad/metadata.(*MetadataRepo).getMappingDatas(0xc420143090, 0xc42046b3c0, 0x1, 0xc420411a70, 0xc420411a70, 0xc420470ad8)
/home/travis/gopath/src/github.com/yunify/metad/metadata/metarepo.go:243 +0x42b fp=0xc420327878 sp=0xc420327690
github.com/yunify/metad/metadata.(*MetadataRepo).Self(0xc420143090, 0xc4203f8760, 0xc, 0xc42046b2a9, 0x1, 0xc420470940, 0xc)
/home/travis/gopath/src/github.com/yunify/metad/metadata/metarepo.go:217 +0x1a2 fp=0xc420327960 sp=0xc420327878
main.(*Metad).selfHandler(0xc42015d530, 0xed7d80, 0xc4203cee00, 0xc4203c54a0, 0xc420327a58, 0xc420327a60, 0xc420327a50, 0x40a578)
/home/travis/gopath/src/github.com/yunify/metad/metad.go:407 +0x238 fp=0xc420327a00 sp=0xc420327960
main.(*Metad).(main.selfHandler)-fm(0xed7d80, 0xc4203cee00, 0xc4203c54a0, 0xc4204708f0, 0xc420470801, 0xc4204708e0, 0xed7e40)
/home/travis/gopath/src/github.com/yunify/metad/metad.go:96 +0x48 fp=0xc420327a50 sp=0xc420327a00
main.(*Metad).handleWrapper.func1(0xed6fc0, 0xc420151790, 0xc4203c54a0)
/home/travis/gopath/src/github.com/yunify/metad/metad.go:563 +0x2cb fp=0xc420327bc8 sp=0xc420327a50
net/http.HandlerFunc.ServeHTTP(0xc420146ea0, 0xed6fc0, 0xc420151790, 0xc4203c54a0)
/home/travis/.gimme/versions/go1.7.linux.amd64/src/net/http/server.go:1726 +0x44 fp=0xc420327bf0 sp=0xc420327bc8
github.com/yunify/metad/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc4201430e0, 0xed6fc0, 0xc420151790, 0xc4203c54a0)
/home/travis/gopath/src/github.com/yunify/metad/vendor/github.com/gorilla/mux/mux.go:99 +0x255 fp=0xc420327ce0 sp=0xc420327bf0
net/http.serverHandler.ServeHTTP(0xc420149580, 0xed6fc0, 0xc420151790, 0xc4203c54a0)
/home/travis/.gimme/versions/go1.7.linux.amd64/src/net/http/server.go:2202 +0x7d fp=0xc420327d28 sp=0xc420327ce0
net/http.(*conn).serve(0xc42013be80, 0xed7d80, 0xc4203cea40)
/home/travis/.gimme/versions/go1.7.linux.amd64/src/net/http/server.go:1579 +0x4b7 fp=0xc420327f88 sp=0xc420327d28
runtime.goexit()
/home/travis/.gimme/versions/go1.7.linux.amd64/src/runtime/asm_amd64.s:2086 +0x1 fp=0xc420327f90 sp=0xc420327f88
created by net/http.(*Server).Serve
/home/travis/.gimme/versions/go1.7.linux.amd64/src/net/http/server.go:2293 +0x44d

Run error when specify listen port

Run failed with --listen 80 but succeed without. See detail below:

root@i-lvq71mzo:~# docker run -d --name metadata -p 80:80 -p 9611:9611 qingcloud/metad --listen_manage :9611 --nodes 192.168.0.6,192.168.0.7 --listen 80
7d18c66b19499808da071d84f83222752300bc64f8a87021c21c9aa502bba269
root@i-lvq71mzo:~# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
root@i-lvq71mzo:~# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS               NAMES
7d18c66b1949        qingcloud/metad     "/usr/bin/metad --..."   8 seconds ago       Exited (1) 7 seconds ago                       metadata
root@i-lvq71mzo:~# docker logs metadata
set log level to: info
process arg name: listen, value: 80, default: :80
process arg name: listen_manage, value: :9611, default: 127.0.0.1:9611
process arg name: nodes, value: [192.168.0.6,192.168.0.7], default: []
2017-03-27T09:46:08Z 7d18c66b1949 /usr/bin/metad[1]: INFO Starting metad 1.0.dev
2017-03-27T09:46:08Z 7d18c66b1949 /usr/bin/metad[1]: INFO Backend nodes set to
2017-03-27T09:46:08Z 7d18c66b1949 /usr/bin/metad[1]: INFO Start Sync
2017-03-27T09:46:08Z 7d18c66b1949 /usr/bin/metad[1]: INFO Listening for Manage on :9611
2017-03-27T09:46:08Z 7d18c66b1949 /usr/bin/metad[1]: INFO Listening on 80
2017-03-27T09:46:08Z 7d18c66b1949 /usr/bin/metad[1]: FATAL listen tcp: missing port in address 80
root@i-lvq71mzo:~# docker rm -f metadata
metadata
root@i-lvq71mzo:~# docker run -d --name metadata -p 80:80 -p 9611:9611 qingcloud/metad --listen_manage :9611 --nodes 192.168.0.6,192.168.0.7
ff3f9be297ba0d5f8446b0d396bdf96d28ddebc5a49a7e08416bbc463aa2f645
root@i-lvq71mzo:~# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                  NAMES
ff3f9be297ba        qingcloud/metad     "/usr/bin/metad --..."   3 seconds ago       Up 3 seconds        0.0.0.0:80->80/tcp, 0.0.0.0:9611->9611/tcp, 9112/tcp   metadata
root@i-lvq71mzo:~# docker version
Client:
 Version:      17.03.0-ce
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   60ccb22
 Built:        Thu Feb 23 11:02:43 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.03.0-ce
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   60ccb22
 Built:        Thu Feb 23 11:02:43 2017
 OS/Arch:      linux/amd64
 Experimental: false

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.