Skip to content
This repository was archived by the owner on Feb 8, 2021. It is now read-only.

Conversation

@wrouesnel
Copy link
Contributor

Add finer-grained locking to the supervisor eventlog based on the upstream docker containerd code.

Adds full compliance for the Event() API by supporting queries for specific container IDs and stored events only, as required by newer Docker daemons in order to recover from hard shutdowns without deadlocking the docker daemon.

This fixes the problem of deadlocking docker when running with runv and doing a hard shutdown, as runv was not responding with the events docker actually wanted.

The code is mostly adapted from https://github.com/docker/containerd/blob/master/supervisor/supervisor.go.

@wrouesnel
Copy link
Contributor Author

Hm, this actually looks like the issue in #379 is being made visible to tests now...

@wrouesnel wrouesnel force-pushed the update-supervisor-eventcode branch from 09808d2 to 772591b Compare October 27, 2016 15:01
}

func (c *Container) run(p *Process) {
func (c *Container) run(p *Process) error {
Copy link
Contributor

Choose a reason for hiding this comment

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

Changes in this file duplicate with #379

@wrouesnel
Copy link
Contributor Author

This patch is built on the prior PR at this point, and not quite ready since it doesn't pass existing tests yet. I'm still playing around with the event log code to figure out how it should best work.

Add finer-grained locking to the supervisor eventlog based on
the upstream docker containerd code.

Adds full compliance for the Event() API by supporting queries for
specific container IDs and stored events only, as required by
newer Docker daemons in order to recover from hard shutdowns
without deadlocking the docker daemon.
@wrouesnel wrouesnel force-pushed the update-supervisor-eventcode branch from 772591b to 4272154 Compare January 6, 2017 04:00
@laijs
Copy link
Contributor

laijs commented Aug 3, 2017

@wrouesnel runv cli is being improved continuously and had just been refactored at #537 . As a result, it seams that the changes in this pr is outdated.
Thank you for your contribution.

@laijs laijs closed this Aug 3, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants