hyperhq / runv

Hypervisor-based Runtime for OCI
Apache License 2.0
828 stars 129 forks source link

proper way handle channels when association/deassociation #353

Open laijs opened 8 years ago

laijs commented 8 years ago

see in https://github.com/hyperhq/runv/pull/192

Because it sometimes will get a impossible long message as follows: I0426 14:22:34.827787 26408 init_comm.go:91] data length is 582570580 I0426 14:22:34.827794 26408 init_comm.go:72] trying to read 512 bytes I0426 14:22:34.827804 26408 init_comm.go:72] trying to read 8 bytes I0426 14:22:34.905799 26408 init_comm.go:87] read 8/8 [length = 0] I0426 14:22:34.905833 26408 init_comm.go:91] data length is 1462868 I0426 14:22:34.905839 26408 init_comm.go:72] trying to read 512 bytes I0426 14:22:34.905849 26408 init_comm.go:72] trying to read 8 bytes

when hyperd exit without handling well with the channels or hyperd exits unexpected, the channels will be at stale state. we need to fix it or use a long-living daemon for every vm, or add connection-restart protocol for it.