Skip to content
This repository has been archived by the owner on Feb 24, 2020. It is now read-only.

glide: bump ql to v1.0.4 #2875

Merged
merged 1 commit into from
Jul 6, 2016
Merged

Conversation

iaguis
Copy link
Member

@iaguis iaguis commented Jul 6, 2016

It fixes an occassional panic when doing GC.

@jonboulle
Copy link
Contributor

is there not a rkt issue for this?

@iaguis
Copy link
Member Author

iaguis commented Jul 6, 2016

I couldn't find any

@iaguis
Copy link
Member Author

iaguis commented Jul 6, 2016

Rebased.

subpackages:
- driver
- vendored/github.com/camlistore/go4/lock
- vendored/github.com/cznic/exp/lldb
Copy link
Member

@lucab lucab Jul 6, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Achtung, vendor stripping/flattening is not happening here as ql does vendoring in a non-standard directory.

Evoking @s-urbaniak here, as I guess this is a new corner-case.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately there is not much we can do here, since ql does import rewriting for those "vendored" packages, see https://github.com/cznic/ql/blob/master/file.go#L23-L24.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To get out of this, I guess we have to unvendor cznic/exp/lldb, and github.com/camlistore/go4/lock in our glide.yaml file.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can do that

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As an interim solution, that should be safe to do as we gain both of them as transitive dependencies via ql only (just verified).

It fixes an occassional panic when doing GC.
@jonboulle
Copy link
Contributor

Generally LGTM but do we really have no reference at all for this supposed panic??

@iaguis iaguis merged commit 56f8db4 into rkt:master Jul 6, 2016
@iaguis
Copy link
Member Author

iaguis commented Jul 6, 2016

For the record, crash reported by @Quentin-M OOB:

$ rkt gc
​
Garbage collecting pod "82cbb83b-efe8-41f1-9f88-1c2186d3cc09"
gc: problem performing stage1 GC on "82cbb83b-efe8-41f1-9f88-1c2186d3cc09": open /var/lib/rkt/pods/exited-garbage/82cbb83b-efe8-41f1-9f88-1c2186d3cc09/stage1/manifest: no such file or directory
Garbage collecting pod "82ce2058-5db4-4050-ba75-bff9e80cbb7a"
gc: problem performing stage1 GC on "82ce2058-5db4-4050-ba75-bff9e80cbb7a": open /var/lib/rkt/pods/exited-garbage/82ce2058-5db4-4050-ba75-bff9e80cbb7a/stage1/manifest: no such file or directory
Garbage collecting pod "82d42c4a-88b5-41da-90b5-f205f5e24c79"
gc: problem performing stage1 GC on "82d42c4a-88b5-41da-90b5-f205f5e24c79": open /var/lib/rkt/pods/exited-garbage/82d42c4a-88b5-41da-90b5-f205f5e24c79/stage1/manifest: no such file or directory
Garbage collecting pod "82d6399f-962c-4534-853a-714c23d6e35e"
gc: problem performing stage1 GC on "82d6399f-962c-4534-853a-714c23d6e35e": open /var/lib/rkt/pods/exited-garbage/82d6399f-962c-4534-853a-714c23d6e35e/stage1/manifest: no such file or directory
Garbage collecting pod "82dd9ae9-ea3a-4bb7-91b7-a9250a2eda9e"
gc: problem performing stage1 GC on "82dd9ae9-ea3a-4bb7-91b7-a9250a2eda9e": open /var/lib/rkt/pods/exited-garbage/82dd9ae9-ea3a-4bb7-91b7-a9250a2eda9e/stage1/manifest: no such file or directory
Garbage collecting pod "82e0cd75-5136-4c03-919f-08a6e8383bb0"
gc: problem performing stage1 GC on "82e0cd75-5136-4c03-919f-08a6e8383bb0": open /var/lib/rkt/pods/exited-garbage/82e0cd75-5136-4c03-919f-08a6e8383bb0/stage1/manifest: no such file or directory
Garbage collecting pod "82e926b2-af84-4397-adfe-256385a450b6"
gc: problem performing stage1 GC on "82e926b2-af84-4397-adfe-256385a450b6": open /var/lib/rkt/pods/exited-garbage/82e926b2-af84-4397-adfe-256385a450b6/stage1/manifest: no such file or directory
Garbage collecting pod "82ec4248-8078-47a4-bfac-eed64b32a586"
gc: problem performing stage1 GC on "82ec4248-8078-47a4-bfac-eed64b32a586": open /var/lib/rkt/pods/exited-garbage/82ec4248-8078-47a4-bfac-eed64b32a586/stage1/manifest: no such file or directory
Garbage collecting pod "82f0c788-cf62-4b85-ae8b-47961e38b043"
gc: problem performing stage1 GC on "82f0c788-cf62-4b85-ae8b-47961e38b043": open /var/lib/rkt/pods/exited-garbage/82f0c788-cf62-4b85-ae8b-47961e38b043/stage1/manifest: no such file or directory
Garbage collecting pod "830f2c7c-ca9d-45cc-a83d-a6a8bab458c7"
gc: problem performing stage1 GC on "830f2c7c-ca9d-45cc-a83d-a6a8bab458c7": open /var/lib/rkt/pods/exited-garbage/830f2c7c-ca9d-45cc-a83d-a6a8bab458c7/stage1/manifest: no such file or directory
Garbage collecting pod "8318fb1f-13d6-4c04-bd30-dc072529146b"
gc: problem performing stage1 GC on "8318fb1f-13d6-4c04-bd30-dc072529146b": open /var/lib/rkt/pods/exited-garbage/8318fb1f-13d6-4c04-bd30-dc072529146b/stage1/manifest: no such file or directory
Garbage collecting pod "831bf652-b62a-4ce4-9dad-73c90647b454"
gc: problem performing stage1 GC on "831bf652-b62a-4ce4-9dad-73c90647b454": open /var/lib/rkt/pods/exited-garbage/831bf652-b62a-4ce4-9dad-73c90647b454/stage1/manifest: no such file or directory
Garbage collecting pod "8323f741-a68b-4721-9aae-dcf0a4ee8ec9"
gc: problem performing stage1 GC on "8323f741-a68b-4721-9aae-dcf0a4ee8ec9": open /var/lib/rkt/pods/exited-garbage/8323f741-a68b-4721-9aae-dcf0a4ee8ec9/stage1/manifest: no such file or directory
Garbage collecting pod "83252108-c1ae-452b-9921-25e863d7ed78"
gc: problem performing stage1 GC on "83252108-c1ae-452b-9921-25e863d7ed78": open /var/lib/rkt/pods/exited-garbage/83252108-c1ae-452b-9921-25e863d7ed78/stage1/manifest: no such file or directory
Garbage collecting pod "83252e6f-ac55-43f1-b71a-7459f427246c"
gc: problem performing stage1 GC on "83252e6f-ac55-43f1-b71a-7459f427246c": open /var/lib/rkt/pods/exited-garbage/83252e6f-ac55-43f1-b71a-7459f427246c/stage1/manifest: no such file or directory
Garbage collecting pod "8327d589-5775-4454-96be-d85a98695be2"
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x0 pc=0x9f95ea]
​
goroutine 1 [running, locked to thread]:
github.com/cznic/ql.newFileFromOSFile.func2(0xc820474bae, 0xc820474be8)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/Godeps/_workspace/src/github.com/cznic/ql/file.go:413 +0x2a
github.com/cznic/ql.newFileFromOSFile(0x7f66a06e2d80, 0xc82013c798, 0x0, 0x7f669d6ac1d8, 0xc820773380)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/Godeps/_workspace/src/github.com/cznic/ql/file.go:422 +0x2ad
github.com/cznic/ql.OpenFile(0xc820246ca0, 0x19, 0xc820475038, 0x0, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/Godeps/_workspace/src/github.com/cznic/ql/file.go:92 +0x1c3
github.com/cznic/ql.(*sqlDriver).Open(0x1593100, 0xc820246ca0, 0x19, 0x0, 0x0, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/Godeps/_workspace/src/github.com/cznic/ql/driver.go:173 +0x936
database/sql.(*DB).conn(0xc820435680, 0x1, 0x1, 0x0, 0x0)
    /usr/lib/go/src/database/sql/sql.go:710 +0x451
database/sql.(*DB).begin(0xc820435680, 0x1, 0x2, 0x0, 0x0)
    /usr/lib/go/src/database/sql/sql.go:1050 +0x3f
database/sql.(*DB).Begin(0xc820435680, 0x2, 0x0, 0x0)
    /usr/lib/go/src/database/sql/sql.go:1038 +0x5c
github.com/coreos/rkt/store.(*DB).Begin(0xc820246ba0, 0x0, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/store/db.go:138 +0x31
github.com/coreos/rkt/store.(*DB).DoTx(0xc820246ba0, 0xc820475418, 0x1, 0x1, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/store/db.go:157 +0x3a
github.com/coreos/rkt/store.(*DB).Do(0xc820246ba0, 0xc820475418, 0x1, 0x1, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/store/db.go:151 +0xb9
github.com/coreos/rkt/store.NewStore(0xc8203e18c0, 0xc, 0x0, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/store/store.go:273 +0xb36
main.deletePod(0xc820621d60)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/gc.go:232 +0x249
main.emptyExitedGarbage.func1(0xc820621d60)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/gc.go:132 +0x53e
main.walkPods(0x10, 0xc820475b68, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/pods.go:145 +0x81f
main.emptyExitedGarbage(0x0, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/gc.go:116 +0x45
main.runGC(0x155be80, 0xc8203e1780, 0x0, 0x1, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/gc.go:85 +0x167
main.runWrapper.func1(0x155be80, 0xc8203e1780, 0x0, 0x1)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/rkt.go:197 +0x43
main.ensureSuperuser.func1(0x155be80, 0xc8203e1780, 0x0, 0x1)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/rkt.go:211 +0x160
github.com/spf13/cobra.(*Command).execute(0x155be80, 0xc8203e1730, 0x1, 0x1, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/Godeps/_workspace/src/github.com/spf13/cobra/command.go:572 +0x869
github.com/spf13/cobra.(*Command).ExecuteC(0x155b280, 0x155be80, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/Godeps/_workspace/src/github.com/spf13/cobra/command.go:662 +0x54e
github.com/spf13/cobra.(*Command).Execute(0x155b280, 0x0, 0x0)
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/Godeps/_workspace/src/github.com/spf13/cobra/command.go:618 +0x2d
main.main()
    /build/amd64-usr/var/tmp/portage/app-emulation/rkt-1.9.1/work/rkt-1.9.1/build-rkt-1.9.1/gopath/src/github.com/coreos/rkt/rkt/main.go:32 +0x98
​
goroutine 17 [syscall, locked to thread]:
runtime.goexit()
    /usr/lib/go/src/runtime/asm_amd64.s:1721 +0x1
​
goroutine 5 [syscall]:
os/signal.loop()
    /usr/lib/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
    /usr/lib/go/src/os/signal/signal_unix.go:28 +0x37

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants