Skip to content

Instantly share code, notes, and snippets.

@yottta
Created March 18, 2025 09:13
Show Gist options
  • Save yottta/5692df8626e7c5d9fd316a712e446e61 to your computer and use it in GitHub Desktop.
Save yottta/5692df8626e7c5d9fd316a712e446e61 to your computer and use it in GitHub Desktop.
Error locking with s3 backend against Hetzner
2025-03-18T11:06:42.857+0200 [DEBUG] backend-s3: HTTP Request Sent: aws.region=us-west-1 aws.s3.bucket=<bucket-name> aws.s3.key=<lock-state-object-name>.tflock rpc.method=PutObject rpc.service=S3 rpc.system=aws-api tf_aws.sdk=aws-sdk-go-v2 tf_aws.signing_region="" http.request.header.authorization="AWS4-HMAC-SHA256 Credential=<obfuscated>, SignedHeaders=accept-encoding;amz-sdk-invocation-id;amz-sdk-request;content-encoding;content-length;content-type;host;if-none-match;x-amz-content-sha256;x-amz-date;x-amz-decoded-content-length;x-amz-trailer, Signature=*****" http.request.header.accept_encoding=identity http.request.header.x_amz_decoded_content_length=253 http.request.header.amz_sdk_request="attempt=1; max=5" http.request.header.x_amz_date=20250318T090642Z http.request.body="[Redacted: 295 bytes, Type: application/json]" http.request.header.amz_sdk_invocation_id=d4288450-6932-4996-aaef-0c9559af9580 http.request.header.content_encoding=aws-chunked http.request.header.x_amz_content_sha256=STREAMING-UNSIGNED-PAYLOAD-TRAILER http.url=https://<bucket-url>.your-objectstorage.com/<lock-state-object-name>.tflock?x-id=PutObject net.peer.name=<bucket-url>.your-objectstorage.com http.user_agent="aws-sdk-go-v2/1.36.0 ua/2.1 os/macos lang/go#1.24.0 md/GOOS#darwin md/GOARCH#arm64 api/s3#1.75.2 m/Z APN/1.0 OpenTofu/1.10.0-dev" http.request_content_length=295 http.request.header.x_amz_trailer=x-amz-checksum-crc32 http.request.header.if_none_match="*" http.request.header.content_type=application/json http.method=PUT
2025-03-18T11:06:42.898+0200 [DEBUG] backend-s3: HTTP Response Received: aws.region=us-west-1 aws.s3.bucket=<bucket-name> aws.s3.key=<lock-state-object-name>.tflock rpc.method=PutObject rpc.service=S3 rpc.system=aws-api tf_aws.sdk=aws-sdk-go-v2 tf_aws.signing_region="" http.duration=38 http.status_code=400 http.response.header.content_type=application/xml http.response.header.date="Tue, 18 Mar 2025 09:06:42 GMT" http.response.header.strict_transport_security=max-age=63072000
http.response.body=
| <?xml version="1.0" encoding="UTF-8"?><Error><Code>XAmzContentSHA256Mismatch</Code><Message></Message><BucketName><bucket-name></BucketName><RequestId><REQUESTID></RequestId><HostId><HOSTID></HostId></Error>
http.response_content_length=295 http.response.header.x_amz_request_id=<REQUESTID> http.response.header.accept_ranges=bytes http.response.header.x_debug_bucket=<bucket-name>
2025-03-18T11:06:42.898+0200 [DEBUG] backend-s3: request failed with unretryable error https response error StatusCode: 400, RequestID: <REQUESTID>, HostID: <HOSTID>, api error XAmzContentSHA256Mismatch: UnknownError: aws.region=us-west-1 aws.s3.bucket=<bucket-name> aws.s3.key=<lock-state-object-name>.tflock rpc.method=PutObject rpc.service=S3 rpc.system=aws-api tf_aws.sdk=aws-sdk-go-v2
2025-03-18T11:06:42.900+0200 [DEBUG] backend-s3: HTTP Request Sent: aws.region=us-west-1 aws.s3.bucket=<bucket-name> aws.s3.key=<lock-state-object-name>.tflock rpc.method=GetObject rpc.service=S3 rpc.system=aws-api tf_aws.sdk=aws-sdk-go-v2 tf_aws.signing_region="" http.method=GET http.url=https://<bucket-url>.your-objectstorage.com/<lock-state-object-name>.tflock?x-id=GetObject net.peer.name=<bucket-url>.your-objectstorage.com http.user_agent="aws-sdk-go-v2/1.36.0 ua/2.1 os/macos lang/go#1.24.0 md/GOOS#darwin md/GOARCH#arm64 api/s3#1.75.2 m/b APN/1.0 OpenTofu/1.10.0-dev" http.request.header.authorization="AWS4-HMAC-SHA256 Credential=<obfuscated>, SignedHeaders=accept-encoding;amz-sdk-invocation-id;amz-sdk-request;host;x-amz-checksum-mode;x-amz-content-sha256;x-amz-date, Signature=*****" http.request.header.accept_encoding=identity http.request.header.amz_sdk_request="attempt=1; max=5" http.request.header.x_amz_content_sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 http.request.header.x_amz_date=20250318T090642Z http.request.header.x_amz_checksum_mode=ENABLED http.request.header.amz_sdk_invocation_id=905a5242-514e-4f4f-b563-4784e567a02f http.request.body=""
2025-03-18T11:06:42.930+0200 [DEBUG] backend-s3: HTTP Response Received: aws.region=us-west-1 aws.s3.bucket=<bucket-name> aws.s3.key=<lock-state-object-name>.tflock rpc.method=GetObject rpc.service=S3 rpc.system=aws-api tf_aws.sdk=aws-sdk-go-v2 tf_aws.signing_region="" http.duration=30 http.response_content_length=279 http.response.header.strict_transport_security=max-age=63072000 http.response.header.x_amz_request_id=<REQUESTID> http.response.header.accept_ranges=bytes http.response.header.content_type=application/xml http.response.body="[Redacted: 279 bytes, Type: application/xml]" http.status_code=404 http.response.header.date="Tue, 18 Mar 2025 09:06:43 GMT" http.response.header.x_debug_bucket=<bucket-name>
2025-03-18T11:06:42.930+0200 [WARN] backend-s3: Response has no supported checksum. Not validating response payload.: aws.region=us-west-1 aws.s3.bucket=<bucket-name> aws.s3.key=<lock-state-object-name>.tflock rpc.method=GetObject rpc.service=S3 rpc.system=aws-api tf_aws.sdk=aws-sdk-go-v2
2025-03-18T11:06:42.974+0200 [DEBUG] backend-s3: request failed with unretryable error https response error StatusCode: 404, RequestID: <REQUESTID>, HostID: <HOSTID>, NoSuchKey: : aws.region=us-west-1 aws.s3.bucket=<bucket-name> aws.s3.key=<lock-state-object-name>.tflock rpc.method=GetObject rpc.service=S3 rpc.system=aws-api tf_aws.sdk=aws-sdk-go-v2
│ Error: Error acquiring the state lock
│ Error message: 2 errors occurred:
│ * operation error S3: PutObject, https response error StatusCode: 400, RequestID: <REQUESTID>, HostID: <HOSTID>, api error XAmzContentSHA256Mismatch: UnknownError
│ * operation error S3: GetObject, https response error StatusCode: 404, RequestID: <REQUESTID>, HostID: <HOSTID>, NoSuchKey:
│ OpenTofu acquires a state lock to protect the state from being written
│ by multiple users at the same time. Please resolve the issue above and try
│ again. For most commands, you can disable locking with the "-lock=false"
│ flag, but this is not recommended.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment