Skip to content

Operation failed: failed uploading filesystem: request failed: PUT, http2: timeout awaiting response headers #685

@itsavvy-ankur

Description

@itsavvy-ankur

Consistently seeing the below error when trying to plan a workspace in Terraform enterprise

Operation failed: failed uploading filesystem: request failed: PUT https://<<REDACTED>>/_archivist/v1/object/dmF1bHQ6djE6bVFjWmVYcnZwYmRGN0hSanRGZS8vbjhZd3lWNXpsM1dVOWtweUtBNkphSFVkbE5aWlNjZS9LNiswWXFkNFN5RDlUZmI2ZytET0xlcjAwODNhSitScS9wM1R4TlFEWEFzWUtDUFJqYVV5dVNEc2ROMlEvZWtKTUZKOXRjNHV0YnhSeUlkRnNnakVqKzhmSFBXRUtRV25GcElCdndtaUJwaVQ5SXV4NnhPMC9IeW80aE9iQTdyK2VNWVIxdlVVYU9qdEVNZkpqODZFb29GVWV0VzcrUlFCSmZlbFFkbTFYMTkvTWgrY2M2QndhVWdVN2tnNjhMOFJ5aWZsdzlIRzR6Rnd6OW9ZdEFFMWs2Q0NEWU5PMHgrLzZiNmZ6ZWpjU25TaFRoZnF5anpISDJDeXFUMG1jM0IzZm92cmVjaTE5bmZkalVRUmo4U1Q1MGNsSVQ5YWdjPQ giving up after 16 attempt(s): Put "https://<<REDACTED>>_archivist/v1/object/dmF1bHQ6djE6bVFjWmVYcnZwYmRGN0hSanRGZS8vbjhZd3lWNXpsM1dVOWtweUtBNkphSFVkbE5aWlNjZS9LNiswWXFkNFN5RDlUZmI2ZytET0xlcjAwODNhSitScS9wM1R4TlFEWEFzWUtDUFJqYVV5dVNEc2ROMlEvZWtKTUZKOXRjNHV0YnhSeUlkRnNnakVqKzhmSFBXRUtRV25GcElCdndtaUJwaVQ5SXV4NnhPMC9IeW80aE9iQTdyK2VNWVIxdlVVYU9qdEVNZkpqODZFb29GVWV0VzcrUlFCSmZlbFFkbTFYMTkvTWgrY2M2QndhVWdVN2tnNjhMOFJ5aWZsdzlIRzR6Rnd6OW9ZdEFFMWs2Q0NEWU5PMHgrLzZiNmZ6ZWpjU25TaFRoZnF5anpISDJDeXFUMG1jM0IzZm92cmVjaTE5bmZkalVRUmo4U1Q1MGNsSVQ5YWdjPQ": http2: timeout awaiting response headers

Investigating further this issue arises during creating a new configuration version, from the UI it would seem all elements of the plan are successful -

https://github.com/hashicorp/go-tfe/blob/main/configuration_version.go#L277-L284

func (s *configurationVersions) UploadTarGzip(ctx context.Context, uploadURL string, archive io.Reader) error {
	req, err := s.client.NewRequest("PUT", uploadURL, archive)
	if err != nil {
		return err
	}

	return req.Do(ctx, nil)
}

The above code uses the go-tfe client which has its default values defined here and I am wondering if this is causing the calls to timeout and if there is a way to increase them ?

go-tfe/tfe.go

Lines 343 to 351 in 8623569

client.http = &retryablehttp.Client{
Backoff: client.retryHTTPBackoff,
CheckRetry: client.retryHTTPCheck,
ErrorHandler: retryablehttp.PassthroughErrorHandler,
HTTPClient: config.HTTPClient,
RetryWaitMin: 100 * time.Millisecond,
RetryWaitMax: 400 * time.Millisecond,
RetryMax: 30,
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions