sourcegraph / srclib

srclib is a polyglot code analysis library, built for hackability. It consists of language analysis toolchains (currently for Go and Java, with Python, JavaScript, and Ruby in beta) with a common output format, and a CLI tool for running the analysis.
https://srclib.org
Other
942 stars 62 forks source link

Src api list breaks #164

Open xizhao opened 9 years ago

xizhao commented 9 years ago
runtime.throw(0x6f1e80, 0x5)
    /home/samer/go/src/runtime/panic.go:543 +0x96 fp=0x20fd430c0 sp=0x20fd430a8
runtime.sigpanic()
    /home/samer/go/src/runtime/sigpanic_unix.go:27 +0x2bf fp=0x20fd43110 sp=0x20fd430c0
runtime.mapaccess1_faststr(0x4f4f00, 0x208c6ba00, 0x20ddc0a20, 0x17, 0x17)
    /home/samer/go/src/runtime/hashmap_fast.go:252 +0x3cc fp=0x20fd43170 sp=0x20fd43110
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20ddc0a20, 0x17, 0x0, 0x208eb3a00)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:139 +0x144 fp=0x20fd43300 sp=0x20fd43170
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20e74e000, 0x16, 0x0, 0x208d1c2c0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd43490 sp=0x20fd43300
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20e7a3fc0, 0x15, 0x0, 0x208d1c280)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd43620 sp=0x20fd43490
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20e7a3f80, 0x14, 0x0, 0x208d1c260)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd437b0 sp=0x20fd43620
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20e7a3f40, 0x13, 0x0, 0x20911f9c0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd43940 sp=0x20fd437b0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20e7a3f00, 0x12, 0x0, 0x209c59660)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd43ad0 sp=0x20fd43940
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20e7a3ec0, 0x11, 0x0, 0x209c59640)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd43c60 sp=0x20fd43ad0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fbd0, 0x10, 0x0, 0x209c59620)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd43df0 sp=0x20fd43c60
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fbb0, 0xf, 0x0, 0x209c59600)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd43f80 sp=0x20fd43df0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fb90, 0xe, 0x0, 0x209c595e0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd44110 sp=0x20fd43f80
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fb70, 0xd, 0x0, 0x209c595c0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd442a0 sp=0x20fd44110
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fb50, 0xc, 0x0, 0x209c595a0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd44430 sp=0x20fd442a0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fb30, 0xb, 0x0, 0x209c59580)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd445c0 sp=0x20fd44430
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fb10, 0xa, 0x0, 0x209c59560)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd44750 sp=0x20fd445c0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20faf0, 0x9, 0x0, 0x209c59540)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd448e0 sp=0x20fd44750
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fad0, 0x8, 0x0, 0x209c59520)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd44a70 sp=0x20fd448e0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fab0, 0x7, 0x0, 0x209c59500)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd44c00 sp=0x20fd44a70
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fa90, 0x6, 0x0, 0x209c594e0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd44d90 sp=0x20fd44c00
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fa80, 0x5, 0x0, 0x209c594a0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd44f20 sp=0x20fd44d90
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fa60, 0x4, 0x0, 0x209c59480)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd450b0 sp=0x20fd44f20
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20fa40, 0x3, 0x0, 0x209c59460)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd45240 sp=0x20fd450b0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a20e240, 0x2, 0x0, 0x209c58b80)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd453d0 sp=0x20fd45240
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x20a6a6ad0, 0x1, 0x0, 0x209c582a0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd45560 sp=0x20fd453d0
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build.func2(0x0, 0x0, 0x208c6b900, 0x208eb3720)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:143 +0x425 fp=0x20fd456f0 sp=0x20fd45560
sourcegraph.com/sourcegraph/srclib/store.(*defQueryTreeIndex).Build(0x20950f850, 0x20f809410, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_query_tree_index.go:152 +0x161e fp=0x20fd45dc8 sp=0x20fd456f0
sourcegraph.com/sourcegraph/srclib/store.(*indexedTreeStore).buildIndexes.func4(0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/indexed.go:468 +0x470 fp=0x20fd45f90 sp=0x20fd45dc8
code.google.com/p/rog-go/parallel.(*Run).Do.func1(0x20f87cd80, 0x20f82b720)
    /home/samer/src/code.google.com/p/rog-go/parallel/parallel.go:67 +0x4c fp=0x20fd45fd0 sp=0x20fd45f90
runtime.goexit()
    /home/samer/go/src/runtime/asm_amd64.s:1671 +0x1 fp=0x20fd45fd8 sp=0x20fd45fd0
created by code.google.com/p/rog-go/parallel.(*Run).Do
    /home/samer/src/code.google.com/p/rog-go/parallel/parallel.go:70 +0x96

goroutine 1 [semacquire]:
sync.runtime_Semacquire(0x20950f950)
    /home/samer/go/src/runtime/sema.go:43 +0x2d
sync.(*WaitGroup).Wait(0x20f87cd98)
    /home/samer/go/src/sync/waitgroup.go:132 +0x169
code.google.com/p/rog-go/parallel.(*Run).Wait(0x20f87cd80, 0x0, 0x0)
    /home/samer/src/code.google.com/p/rog-go/parallel/parallel.go:77 +0x40
sourcegraph.com/sourcegraph/srclib/store.(*indexedTreeStore).buildIndexes(0x20950f860, 0x20f87cd20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/indexed.go:482 +0x749
sourcegraph.com/sourcegraph/srclib/store.(*indexedTreeStore).Index(0x20950f860, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/indexed.go:268 +0x5f
sourcegraph.com/sourcegraph/srclib/store.(*fsRepoStore).Index(0x208eb3020, 0x208dfb9e0, 0x28, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/fs_store.go:246 +0x7f
sourcegraph.com/sourcegraph/srclib/src.Import(0x2208d375e8, 0x208ea0fb0, 0x6ac6e0, 0x208eb3020, 0x0, 0x208b89180, 0x30, 0x0, 0x0, 0x0, ...)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/src/store_cmds.go:327 +0x582
sourcegraph.com/sourcegraph/srclib/src.(*StoreImportCmd).Execute(0x208f8a070, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/src/store_cmds.go:208 +0x423
sourcegraph.com/sourcegraph/srclib/src.ensureBuild(0x2208d37498, 0x208cd5130, 0x208b88e80, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/src/api_cmds.go:241 +0x410
sourcegraph.com/sourcegraph/srclib/src.prepareCommandContext(0x208d1cca0, 0x1b, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/src/api_cmds.go:188 +0x5c2
sourcegraph.com/sourcegraph/srclib/src.(*APIUnitsCmd).Execute(0xa6a560, 0x208d1cac0, 0x0, 0x2, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/src/api_cmds.go:661 +0x8b
sourcegraph.com/sourcegraph/go-flags.(*Parser).ParseArgs(0x208f952c0, 0x208b7e250, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/go-flags/parser.go:242 +0x883
sourcegraph.com/sourcegraph/go-flags.(*Parser).Parse(0x208f952c0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/go-flags/parser.go:137 +0xa1
sourcegraph.com/sourcegraph/srclib/src.Main(0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/src/cli.go:123 +0x53
main.main()
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/cmd/src/src.go:28 +0x388

goroutine 6 [syscall]:
os/signal.loop()
    /home/samer/go/src/os/signal/signal_unix.go:22 +0x1f
created by os/signal.init.1
    /home/samer/go/src/os/signal/signal_unix.go:28 +0x3f

goroutine 47 [chan receive]:
code.google.com/p/rog-go/parallel.NewRun.func1(0x20f87cd80)
    /home/samer/src/code.google.com/p/rog-go/parallel/parallel.go:43 +0x7a
created by code.google.com/p/rog-go/parallel.NewRun
    /home/samer/src/code.google.com/p/rog-go/parallel/parallel.go:52 +0x140

goroutine 49 [runnable]:
bytes.(*Buffer).Write(0x20ddb3b20, 0x20ddb1580, 0xc, 0x10, 0xc, 0x10, 0x0)
    /home/samer/go/src/bytes/buffer.go:125
github.com/alecthomas/binary.(*Encoder).Encode(0x20e87d8c0, 0x4d8d40, 0x20a337b70, 0x0, 0x0)
    /home/samer/src/github.com/alecthomas/binary/binary.go:123 +0x1015
github.com/alecthomas/binary.(*Encoder).Encode(0x20e87d8c0, 0x5db9e0, 0x20a337b60, 0x0, 0x0)
    /home/samer/src/github.com/alecthomas/binary/binary.go:98 +0x1246
github.com/alecthomas/binary.(*Encoder).Encode(0x20e87d8c0, 0x4e4d40, 0x20ddc09e0, 0x0, 0x0)
    /home/samer/src/github.com/alecthomas/binary/binary.go:87 +0xebd
github.com/alecthomas/binary.Marshal(0x4e4d40, 0x20ddc09e0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/samer/src/github.com/alecthomas/binary/binary.go:21 +0x210
sourcegraph.com/sourcegraph/srclib/store.(*defRefUnitsIndex).Build(0x20950f840, 0x20f8092f0, 0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/def_ref_units_index.go:121 +0x57f
sourcegraph.com/sourcegraph/srclib/store.(*indexedTreeStore).buildIndexes.func4(0x0, 0x0)
    /home/samer/src/sourcegraph.com/sourcegraph/srclib/store/indexed.go:460 +0x393
code.google.com/p/rog-go/parallel.(*Run).Do.func1(0x20f87cd80, 0x20f82b6d0)
    /home/samer/src/code.google.com/p/rog-go/parallel/parallel.go:67 +0x4c
created by code.google.com/p/rog-go/parallel.(*Run).Do
    /home/samer/src/code.google.com/p/rog-go/parallel/parallel.go:70 +0x96

Looks like something is hardcoded to samer's computer.

MaikuMori commented 9 years ago

I don't think it's anything hardcoded, it's just debug information in the binary. Did you build the binary yourself or download it?

The issue has to do with access to a map and semaphore when building index. Basically memory access fail. Could use some more context. How did you run into this? Any chance you had 2 src commands running at the same time?