spiegel_podman/libpod
Valentin Rothberg 5b5e53d704 syncContainer: transition from stopping to exited
Allow the cleanup process (and others) to transition the container from
`stopping` to `exited`.  This fixes a race condition detected in #14859
where the cleanup process kicks in _before_ the stopping process can
read the exit file.  Prior to this fix, the cleanup process left the
container in the `stopping` state and removed the conmon files, such
that the stopping process also left the container in this state as it
could not read the exit files.  Hence, `podman wait` timed out (see the
23 seconds execution time of the test [1]) due to the unexpected/invalid
state and the test failed.

Further turn the warning during stop to a debug message since it's a
natural race due to the daemonless/concurrent architecture and nothing
to worry about.

[NO NEW TESTS NEEDED] since we can only monitor if #14859 continues
flaking or not.

[1] https://storage.googleapis.com/cirrus-ci-6707778565701632-fcae48/artifacts/containers/podman/6210434704343040/html/sys-remote-fedora-36-rootless-host.log.html#t--00205

Fixes: #14859
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-08-10 16:46:05 -04:00
..
define Update init ctr default for play kube 2022-07-26 13:39:20 -04:00
driver bump go module to version 4 2022-01-18 12:47:07 +01:00
events fix goroutine leaks in events and logs backend 2022-07-26 13:54:28 -04:00
layers Initial checkin from CRI-O repo 2017-11-01 11:24:59 -04:00
linkmode go fmt: use go 1.18 conditional-build syntax 2022-03-18 09:11:53 +01:00
lock libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
logs libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
plugin libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
shutdown libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
boltdb_state.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
boltdb_state_internal.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
boltdb_state_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
common_test.go bump go module to version 4 2022-01-18 12:47:07 +01:00
container.go Merge pull request #14501 from cdoern/podUTS 2022-07-06 14:51:22 +00:00
container_api.go container wait: improve error message 2022-07-26 14:40:52 -04:00
container_commit.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
container_config.go podman cgroup enhancement 2022-06-24 15:39:15 -04:00
container_copy_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
container_exec.go use c/common code for resize and CopyDetachable 2022-07-06 16:57:07 +02:00
container_graph.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
container_graph_test.go bump go module to version 4 2022-01-18 12:47:07 +01:00
container_inspect.go Merge pull request #14501 from cdoern/podUTS 2022-07-06 14:51:22 +00:00
container_internal.go syncContainer: transition from stopping to exited 2022-08-10 16:46:05 -04:00
container_internal_linux.go libpod: create /etc/passwd if missing 2022-07-26 13:58:18 -04:00
container_internal_linux_test.go test: use T.TempDir to create temporary test directory 2022-05-05 21:09:41 +08:00
container_internal_test.go test: fix failing TestPostDeleteHooks 2022-05-05 21:39:46 +08:00
container_linux.go go fmt: use go 1.18 conditional-build syntax 2022-03-18 09:11:53 +01:00
container_log.go fix goroutine leaks in events and logs backend 2022-07-26 13:54:28 -04:00
container_log_linux.go fix goroutine leaks in events and logs backend 2022-07-26 13:54:28 -04:00
container_log_unsupported.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
container_path_resolution.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
container_stat_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
container_top_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
container_validate.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
diff.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
doc.go document that using libpod package directly is not supported 2022-03-23 19:05:29 +01:00
events.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
healthcheck.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
healthcheck_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
info.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
info_test.go Robust whitespace split of cpu utilization line from /proc/stat 2022-05-14 00:34:56 +00:00
kube.go Add ports and hostname correctly in kube yaml 2022-07-08 11:21:48 -04:00
mounts_linux.go go fmt: use go 1.18 conditional-build syntax 2022-03-18 09:11:53 +01:00
networking_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
networking_linux_test.go enable unparam linter 2022-04-25 13:23:20 +02:00
networking_machine.go enable gocritic linter 2022-04-26 18:12:22 +02:00
networking_slirp4netns.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
oci.go use c/common code for resize and CopyDetachable 2022-07-06 16:57:07 +02:00
oci_conmon.go podman: add new cgroup mode split 2020-06-25 17:16:12 +02:00
oci_conmon_attach_linux.go use c/common code for resize and CopyDetachable 2022-07-06 16:57:07 +02:00
oci_conmon_exec_linux.go use c/common code for resize and CopyDetachable 2022-07-06 16:57:07 +02:00
oci_conmon_linux.go fix wrong log message on Trace level 2022-07-26 13:01:21 -04:00
oci_missing.go use c/common code for resize and CopyDetachable 2022-07-06 16:57:07 +02:00
oci_util.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
options.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
pod.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
pod_api.go Merge pull request #14501 from cdoern/podUTS 2022-07-06 14:51:22 +00:00
pod_internal.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
pod_status.go bump go module to version 4 2022-01-18 12:47:07 +01:00
pod_top_linux.go libpod/pod_top_linux.go: s/TODO/NOTE/ 2022-05-25 12:30:19 +02:00
reset.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
runtime.go Merge pull request #14789 from saschagrunert/libpod-errors 2022-07-05 07:23:22 +00:00
runtime_cstorage.go libpod/runtime: switch to golang native error wrapping 2022-07-04 15:39:00 +02:00
runtime_ctr.go libpod/runtime: switch to golang native error wrapping 2022-07-04 15:39:00 +02:00
runtime_img.go libpod/runtime: switch to golang native error wrapping 2022-07-04 15:39:00 +02:00
runtime_migrate.go libpod/runtime: switch to golang native error wrapping 2022-07-04 15:39:00 +02:00
runtime_pod.go libpod/runtime: switch to golang native error wrapping 2022-07-04 15:39:00 +02:00
runtime_pod_linux.go libpod: do not lock all containers on pod rm 2022-07-26 14:42:19 -04:00
runtime_renumber.go libpod/runtime: switch to golang native error wrapping 2022-07-04 15:39:00 +02:00
runtime_volume.go libpod/runtime: switch to golang native error wrapping 2022-07-04 15:39:00 +02:00
runtime_volume_linux.go Use SafeChown rather then chown for volumes on NFS 2022-07-26 13:32:54 -04:00
runtime_worker.go work queue: simplify and use a wait group 2022-05-25 10:17:46 +02:00
service.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
state.go libpod: fix wait and exit-code logic 2022-06-23 09:11:57 -04:00
state_test.go bump go module to version 4 2022-01-18 12:47:07 +01:00
stats.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
storage.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
util.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
util_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
util_linux_test.go Fix mismatch between log messages and behavior of libpod.LabelVolumePath. 2020-09-13 23:24:15 -04:00
util_test.go bump go module to version 4 2022-01-18 12:47:07 +01:00
volume.go podman volume create --opt=o=timeout... 2022-06-09 16:44:21 -04:00
volume_inspect.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
volume_internal.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00
volume_internal_linux.go libpod: switch to golang native error wrapping 2022-07-05 16:06:32 +02:00