containerd/integration
Wei Fu 82c0f4ff86 pkg/cri/server: add timeout to drain exec io
By default, the child processes spawned by exec process will inherit standard
io file descriptors. The shim server creates a pipe as data channel. Both exec
process and its children write data into the write end of the pipe. And the
shim server will read data from the pipe. If the write end is still open, the
shim server will continue to wait for data from pipe.

So, if the exec command is like `bash -c "sleep 365d &"`, the exec process is
bash and quit after create `sleep 365d`. But the `sleep 365d` will hold the
write end of the pipe for a year! It doesn't make senses that CRI plugin
should wait for it.

For this case, we should use timeout to drain exec process's io instead of
waiting for it.

Fixes: #7802

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2023-03-02 13:06:45 +08:00
..
client Merge pull request #8173 from fuweid/update-go-cni-ver 2023-02-27 23:22:44 -08:00
cri-api/pkg/apis Add container event support to containerd 2022-12-08 19:30:39 +00:00
failpoint/cmd Run gofmt 1.19 2022-08-04 18:18:33 -07:00
images integration: use sleep inf with busybox:1.36 2023-01-29 18:02:18 +08:00
remote error strings should not be capitalized 2023-02-15 14:30:36 +08:00
addition_gids_test.go oci: fix additional GIDs 2023-02-10 15:53:00 +09:00
build_local_containerd_helper_test_linux.go Add sandbox store plugin type 2022-12-20 23:05:14 -08:00
build_local_containerd_helper_test.go Use logtest if possible to clean up logs 2022-10-17 16:27:23 +00:00
container_event_test.go Move PLEG event generation back to sbserver to avoid missing pod sandbox status 2023-02-11 01:34:33 +00:00
container_exec_test.go pkg/cri/server: add timeout to drain exec io 2023-03-02 13:06:45 +08:00
container_log_test.go replace strings.Split(N) for strings.Cut() or alternatives 2022-11-07 10:02:25 +01:00
container_restart_test.go Fix command line parsing for image list 2022-07-25 14:19:40 -07:00
container_stats_test.go Revert container_stats_test.go change which caused Windows CRI integration test failure 2023-01-09 05:22:25 +00:00
container_stop_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
container_update_resources_test.go Fix Memory Limit test 2023-01-17 13:07:28 -05:00
container_volume_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
container_without_image_ref_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
containerd_image_test.go ContainerStatus to return container resources 2022-08-24 19:08:06 +00:00
duplicate_name_test.go Fix command line parsing for image list 2022-07-25 14:19:40 -07:00
image_load_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
image_pull_timeout_test.go integration: add first NRI integration tests. 2022-11-28 21:51:25 +02:00
imagefs_info_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
main_test.go oci: fix additional GIDs 2023-02-10 15:53:00 +09:00
no_metadata_test.go Merge pull request #5619 from mikebrow/cri-add-v1-proxy-alpha 2021-07-09 14:07:24 -04:00
nri_test.go nri_test.go: skip if SELinux is enabled 2023-01-04 02:20:42 +09:00
pod_dualstack_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
pod_hostname_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
pod_userns_linux_test.go Add integration tests for CRI userns 2022-12-27 22:01:12 -03:00
restart_test.go CRI: Fix no CNI info for pod sandbox on restart 2022-12-20 13:20:27 -08:00
runtime_handler_test.go integration: Enables TestRuntimeHandler for Windows 2021-10-07 18:20:59 -07:00
sandbox_clean_remove_test.go Cleanup build constraints 2022-12-08 09:36:20 -08:00
sandbox_clean_remove_windows_test.go Cleanup build constraints 2022-12-08 09:36:20 -08:00
sandbox_run_rollback_test.go go.mod: github.com/containerd/typeurl/v2 v2.1.0 2023-02-11 23:39:52 +09:00
shim_dial_unix_test.go Cleanup build constraints 2022-12-08 09:36:20 -08:00
truncindex_test.go Use image lists in client tests 2022-07-25 10:47:00 -07:00
volume_copy_up_test.go TestVolumeOwnership: compare GID, not group name 2023-01-04 02:20:42 +09:00
volume_copy_up_unix_test.go TestVolumeOwnership: compare GID, not group name 2023-01-04 02:20:42 +09:00
volume_copy_up_windows_test.go Cleanup build constraints 2022-12-08 09:36:20 -08:00
windows_device_test.go chore: use go fix to cleanup old +build buildtag 2022-12-29 14:25:14 +08:00
windows_hostprocess_test.go Cleanup build constraints 2022-12-08 09:36:20 -08:00
windows_rootfs_size_test.go Cleanup build constraints 2022-12-08 09:36:20 -08:00