fnproject/fn

Docker pull stats in image_puller

bharadwr opened this issue · 0 comments

Description
The surrounding PullImage in agent.go with a timer does not capture the true image pull duration, rather the total docker wait time. Code in image_puller.go and cookie.go needs to be changed up to return the number of retries and true pull duration to diagnose issues with the docker daemon, image registry.
A change to the transfer channel in image_puller to return a PullResult struct containing duration, retries, and a list of errors that occurred when pulling would be appropriate.

func (i *imagePuller) startTransfer(trx *transfer) {

An appropriate change in fn-system-tests with a more extensive gRPC call test to ensure image pulls for faulty images with retries would also be in order.