this derivation will be built:
/nix/store/pl1wgx1853z9nprnf347fjz47zmjimr4-niks3-go-unit-tests.drv
Failed to find a machine for remote build!
derivation: pl1wgx1853z9nprnf347fjz47zmjimr4-niks3-go-unit-tests.drv
required (system, features): (aarch64-linux, [])
1 available machines:
(systems, maxjobs, supportedFeatures, mandatoryFeatures)
([aarch64-darwin, x86_64-darwin], 8, [big-parallel, recursive-nix], [])
building '/nix/store/pl1wgx1853z9nprnf347fjz47zmjimr4-niks3-go-unit-tests.drv'
niks3-go-unit-tests> tribuchet: building on eliza
niks3-go-unit-tests> Running client tests...
niks3-go-unit-tests> === RUN TestDoServerRequestAttachesToken
niks3-go-unit-tests> === PAUSE TestDoServerRequestAttachesToken
niks3-go-unit-tests> === RUN TestCaseHackSuffix
niks3-go-unit-tests> === PAUSE TestCaseHackSuffix
niks3-go-unit-tests> === RUN TestFilterOversizedClosures
niks3-go-unit-tests> === PAUSE TestFilterOversizedClosures
niks3-go-unit-tests> === RUN TestPartSizeForNAR
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR
niks3-go-unit-tests> === RUN TestUploadMultipart_SupersededByPeer
niks3-go-unit-tests> === PAUSE TestUploadMultipart_SupersededByPeer
niks3-go-unit-tests> === RUN TestDumpPathMatchesNix
niks3-go-unit-tests> === PAUSE TestDumpPathMatchesNix
niks3-go-unit-tests> === RUN TestDumpPathSingleFile
niks3-go-unit-tests> === PAUSE TestDumpPathSingleFile
niks3-go-unit-tests> === RUN TestDumpPathWriterError
niks3-go-unit-tests> === PAUSE TestDumpPathWriterError
niks3-go-unit-tests> === RUN TestEncodeNixBase32
niks3-go-unit-tests> === PAUSE TestEncodeNixBase32
niks3-go-unit-tests> === RUN TestEncodeNixBase32WithRealHash
niks3-go-unit-tests> === PAUSE TestEncodeNixBase32WithRealHash
niks3-go-unit-tests> === RUN TestConvertHashToNix32
niks3-go-unit-tests> === PAUSE TestConvertHashToNix32
niks3-go-unit-tests> === RUN TestGetStorePathHash
niks3-go-unit-tests> === PAUSE TestGetStorePathHash
niks3-go-unit-tests> === RUN TestPathInfoHashCompatibility
niks3-go-unit-tests> === PAUSE TestPathInfoHashCompatibility
niks3-go-unit-tests> === RUN TestParsePathInfoJSON
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSON
niks3-go-unit-tests> === RUN TestParsePathInfoJSONMultiplePaths
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSONMultiplePaths
niks3-go-unit-tests> === RUN TestPathInfoCACompatibility
niks3-go-unit-tests> === PAUSE TestPathInfoCACompatibility
niks3-go-unit-tests> === RUN TestRateLimiterFeedback
niks3-go-unit-tests> === PAUSE TestRateLimiterFeedback
niks3-go-unit-tests> === RUN TestRateLimiterFeedback_400DoesNotCountAsSuccess
niks3-go-unit-tests> === PAUSE TestRateLimiterFeedback_400DoesNotCountAsSuccess
niks3-go-unit-tests> === RUN TestResolveStorePath
niks3-go-unit-tests> === PAUSE TestResolveStorePath
niks3-go-unit-tests> === RUN TestDoWithRetry_BodyReplayedViaGetBody
niks3-go-unit-tests> === PAUSE TestDoWithRetry_BodyReplayedViaGetBody
niks3-go-unit-tests> === RUN TestShellSplit
niks3-go-unit-tests> === PAUSE TestShellSplit
niks3-go-unit-tests> === RUN TestShellSplitErrors
niks3-go-unit-tests> === PAUSE TestShellSplitErrors
niks3-go-unit-tests> === RUN TestSetClientTLS
niks3-go-unit-tests> === PAUSE TestSetClientTLS
niks3-go-unit-tests> === RUN TestSetClientTLSDoesNotMutateDefaultTransport
niks3-go-unit-tests> === PAUSE TestSetClientTLSDoesNotMutateDefaultTransport
niks3-go-unit-tests> === RUN TestSetClientTLSErrors
niks3-go-unit-tests> === PAUSE TestSetClientTLSErrors
niks3-go-unit-tests> === RUN TestStaticToken
niks3-go-unit-tests> === PAUSE TestStaticToken
niks3-go-unit-tests> === RUN TestFileTokenReadsAndCaches
niks3-go-unit-tests> === PAUSE TestFileTokenReadsAndCaches
niks3-go-unit-tests> === RUN TestFileTokenMissing
niks3-go-unit-tests> === PAUSE TestFileTokenMissing
niks3-go-unit-tests> === RUN TestFileTokenEmpty
niks3-go-unit-tests> === PAUSE TestFileTokenEmpty
niks3-go-unit-tests> === RUN TestScriptTokenNoExpiryRerunsEveryCall
niks3-go-unit-tests> === PAUSE TestScriptTokenNoExpiryRerunsEveryCall
niks3-go-unit-tests> === RUN TestScriptTokenCachesUntilRefresh
niks3-go-unit-tests> === PAUSE TestScriptTokenCachesUntilRefresh
niks3-go-unit-tests> === RUN TestScriptTokenEmptyToken
niks3-go-unit-tests> === PAUSE TestScriptTokenEmptyToken
niks3-go-unit-tests> === RUN TestScriptTokenBadJSON
niks3-go-unit-tests> === PAUSE TestScriptTokenBadJSON
niks3-go-unit-tests> === RUN TestScriptTokenScriptFails
niks3-go-unit-tests> === PAUSE TestScriptTokenScriptFails
niks3-go-unit-tests> === RUN TestScriptTokenEmptyCommand
niks3-go-unit-tests> === PAUSE TestScriptTokenEmptyCommand
niks3-go-unit-tests> === CONT TestDoServerRequestAttachesToken
niks3-go-unit-tests> === CONT TestScriptTokenEmptyCommand
niks3-go-unit-tests> --- PASS: TestScriptTokenEmptyCommand (0.00s)
niks3-go-unit-tests> === CONT TestScriptTokenScriptFails
niks3-go-unit-tests> === CONT TestRateLimiterFeedback
niks3-go-unit-tests> === RUN TestRateLimiterFeedback/429_enables_limiter
niks3-go-unit-tests> === PAUSE TestRateLimiterFeedback/429_enables_limiter
niks3-go-unit-tests> === RUN TestRateLimiterFeedback/503_enables_limiter
niks3-go-unit-tests> === PAUSE TestRateLimiterFeedback/503_enables_limiter
niks3-go-unit-tests> === RUN TestRateLimiterFeedback/200_does_not_enable_limiter
niks3-go-unit-tests> === PAUSE TestRateLimiterFeedback/200_does_not_enable_limiter
niks3-go-unit-tests> === RUN TestRateLimiterFeedback/400_does_not_enable_limiter
niks3-go-unit-tests> === PAUSE TestRateLimiterFeedback/400_does_not_enable_limiter
niks3-go-unit-tests> === CONT TestRateLimiterFeedback/429_enables_limiter
niks3-go-unit-tests> === CONT TestScriptTokenBadJSON
niks3-go-unit-tests> === CONT TestScriptTokenEmptyToken
niks3-go-unit-tests> === CONT TestScriptTokenCachesUntilRefresh
niks3-go-unit-tests> === CONT TestScriptTokenNoExpiryRerunsEveryCall
niks3-go-unit-tests> === CONT TestFileTokenEmpty
niks3-go-unit-tests> --- PASS: TestFileTokenEmpty (0.00s)
niks3-go-unit-tests> === CONT TestEncodeNixBase32
niks3-go-unit-tests> === RUN TestEncodeNixBase32/test_string_hash
niks3-go-unit-tests> === PAUSE TestEncodeNixBase32/test_string_hash
niks3-go-unit-tests> === RUN TestEncodeNixBase32/empty_input
niks3-go-unit-tests> === PAUSE TestEncodeNixBase32/empty_input
niks3-go-unit-tests> === CONT TestDoWithRetry_BodyReplayedViaGetBody
niks3-go-unit-tests> === CONT TestDumpPathSingleFile
niks3-go-unit-tests> === CONT TestResolveStorePath
niks3-go-unit-tests> --- PASS: TestResolveStorePath (0.00s)
niks3-go-unit-tests> === CONT TestDumpPathMatchesNix
niks3-go-unit-tests> === CONT TestRateLimiterFeedback_400DoesNotCountAsSuccess
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Rate limiter enabled after throttle name=server-test rate=5
niks3-go-unit-tests> === CONT TestRateLimiterFeedback/400_does_not_enable_limiter
niks3-go-unit-tests> --- PASS: TestDoServerRequestAttachesToken (0.01s)
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Request returned retryable status, retrying attempt=1 max_attempts=2 backoff=0s status=429 url=http://127.0.0.1:38613
niks3-go-unit-tests> === CONT TestPathInfoHashCompatibility
niks3-go-unit-tests> === RUN TestPathInfoHashCompatibility/old_string_format_with_dash_(SRI)
niks3-go-unit-tests> === PAUSE TestPathInfoHashCompatibility/old_string_format_with_dash_(SRI)
niks3-go-unit-tests> === RUN TestPathInfoHashCompatibility/old_string_format_with_colon
niks3-go-unit-tests> === PAUSE TestPathInfoHashCompatibility/old_string_format_with_colon
niks3-go-unit-tests> === CONT TestRateLimiterFeedback/200_does_not_enable_limiter
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Rate limiter enabled after throttle name=server-test rate=5
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Request returned retryable status, retrying attempt=1 max_attempts=6 backoff=0s status=503 url=http://127.0.0.1:33235
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Rate limiter enabled after throttle name=server-test rate=5
niks3-go-unit-tests> === CONT TestRateLimiterFeedback/503_enables_limiter
niks3-go-unit-tests> === CONT TestShellSplit
niks3-go-unit-tests> --- PASS: TestShellSplit (0.00s)
niks3-go-unit-tests> === CONT TestPathInfoCACompatibility
niks3-go-unit-tests> === RUN TestPathInfoCACompatibility/null_ca_field
niks3-go-unit-tests> === PAUSE TestPathInfoCACompatibility/null_ca_field
niks3-go-unit-tests> === RUN TestPathInfoCACompatibility/old_string_format_-_text
niks3-go-unit-tests> === PAUSE TestPathInfoCACompatibility/old_string_format_-_text
niks3-go-unit-tests> === RUN TestPathInfoCACompatibility/old_string_format_-_fixed_recursive
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Rate limiter backed off name=server-test rate=5
niks3-go-unit-tests> === PAUSE TestPathInfoCACompatibility/old_string_format_-_fixed_recursive
niks3-go-unit-tests> === RUN TestPathInfoCACompatibility/new_structured_format_-_text
niks3-go-unit-tests> === PAUSE TestPathInfoCACompatibility/new_structured_format_-_text
niks3-go-unit-tests> === RUN TestPathInfoCACompatibility/new_structured_format_-_nar_method
niks3-go-unit-tests> === PAUSE TestPathInfoCACompatibility/new_structured_format_-_nar_method
niks3-go-unit-tests> === CONT TestFileTokenMissing
niks3-go-unit-tests> === CONT TestParsePathInfoJSONMultiplePaths
niks3-go-unit-tests> === RUN TestParsePathInfoJSONMultiplePaths/Nix_multiple_paths
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSONMultiplePaths/Nix_multiple_paths
niks3-go-unit-tests> === RUN TestParsePathInfoJSONMultiplePaths/Lix_multiple_paths
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSONMultiplePaths/Lix_multiple_paths
niks3-go-unit-tests> === CONT TestFileTokenReadsAndCaches
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Rate limiter backed off name=server-test rate=5
niks3-go-unit-tests> --- PASS: TestFileTokenMissing (0.00s)
niks3-go-unit-tests> === CONT TestStaticToken
niks3-go-unit-tests> === CONT TestGetStorePathHash
niks3-go-unit-tests> === RUN TestGetStorePathHash/valid_store_path
niks3-go-unit-tests> === PAUSE TestGetStorePathHash/valid_store_path
niks3-go-unit-tests> === RUN TestGetStorePathHash/basename_without_hyphen_should_error
niks3-go-unit-tests> === PAUSE TestGetStorePathHash/basename_without_hyphen_should_error
niks3-go-unit-tests> --- PASS: TestStaticToken (0.00s)
niks3-go-unit-tests> === RUN TestGetStorePathHash/hash_with_invalid_characters_should_error
niks3-go-unit-tests> === PAUSE TestGetStorePathHash/hash_with_invalid_characters_should_error
niks3-go-unit-tests> === RUN TestGetStorePathHash/hash_with_wrong_length_should_error
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Request returned retryable status, retrying attempt=2 max_attempts=6 backoff=0s status=503 url=http://127.0.0.1:33235
niks3-go-unit-tests> === PAUSE TestGetStorePathHash/hash_with_wrong_length_should_error
niks3-go-unit-tests> === CONT TestSetClientTLSDoesNotMutateDefaultTransport
niks3-go-unit-tests> === CONT TestSetClientTLS
niks3-go-unit-tests> === CONT TestShellSplitErrors
niks3-go-unit-tests> === CONT TestUploadMultipart_SupersededByPeer
niks3-go-unit-tests> === CONT TestDumpPathWriterError
niks3-go-unit-tests> === RUN TestPathInfoHashCompatibility/new_structured_format_-_converts_to_SRI
niks3-go-unit-tests> === CONT TestSetClientTLSErrors
niks3-go-unit-tests> === CONT TestConvertHashToNix32
niks3-go-unit-tests> === RUN TestConvertHashToNix32/SRI_format_to_Nix32
niks3-go-unit-tests> --- PASS: TestShellSplitErrors (0.00s)
niks3-go-unit-tests> === PAUSE TestConvertHashToNix32/SRI_format_to_Nix32
niks3-go-unit-tests> === CONT TestCaseHackSuffix
niks3-go-unit-tests> === RUN TestConvertHashToNix32/already_Nix32_format
niks3-go-unit-tests> === RUN TestUploadMultipart_SupersededByPeer/exists
niks3-go-unit-tests> === CONT TestEncodeNixBase32WithRealHash
niks3-go-unit-tests> === CONT TestParsePathInfoJSON
niks3-go-unit-tests> === RUN TestParsePathInfoJSON/Nix_format
niks3-go-unit-tests> === CONT TestFilterOversizedClosures
niks3-go-unit-tests> --- PASS: TestScriptTokenScriptFails (0.01s)
niks3-go-unit-tests> === CONT TestEncodeNixBase32/test_string_hash
niks3-go-unit-tests> === CONT TestEncodeNixBase32/empty_input
niks3-go-unit-tests> --- PASS: TestEncodeNixBase32 (0.00s)
niks3-go-unit-tests> --- PASS: TestEncodeNixBase32/test_string_hash (0.00s)
niks3-go-unit-tests> --- PASS: TestEncodeNixBase32/empty_input (0.00s)
niks3-go-unit-tests> === CONT TestPathInfoCACompatibility/null_ca_field
niks3-go-unit-tests> --- PASS: TestFileTokenReadsAndCaches (0.01s)
niks3-go-unit-tests> === CONT TestParsePathInfoJSONMultiplePaths/Nix_multiple_paths
niks3-go-unit-tests> === RUN TestFilterOversizedClosures/no_limit_keeps_everything
niks3-go-unit-tests> === PAUSE TestFilterOversizedClosures/no_limit_keeps_everything
niks3-go-unit-tests> === RUN TestFilterOversizedClosures/closure_with_oversized_dependency_is_skipped
niks3-go-unit-tests> === PAUSE TestFilterOversizedClosures/closure_with_oversized_dependency_is_skipped
niks3-go-unit-tests> === RUN TestFilterOversizedClosures/all_closures_skipped
niks3-go-unit-tests> === PAUSE TestConvertHashToNix32/already_Nix32_format
niks3-go-unit-tests> --- PASS: TestEncodeNixBase32WithRealHash (0.00s)
niks3-go-unit-tests> === RUN TestConvertHashToNix32/invalid_format
niks3-go-unit-tests> === PAUSE TestConvertHashToNix32/invalid_format
niks3-go-unit-tests> === PAUSE TestUploadMultipart_SupersededByPeer/exists
niks3-go-unit-tests> === RUN TestUploadMultipart_SupersededByPeer/missing
niks3-go-unit-tests> === PAUSE TestUploadMultipart_SupersededByPeer/missing
niks3-go-unit-tests> === CONT TestPathInfoCACompatibility/new_structured_format_-_text
niks3-go-unit-tests> === CONT TestParsePathInfoJSONMultiplePaths/Lix_multiple_paths
niks3-go-unit-tests> === CONT TestPathInfoCACompatibility/old_string_format_-_text
niks3-go-unit-tests> === CONT TestGetStorePathHash/valid_store_path
niks3-go-unit-tests> === CONT TestPathInfoCACompatibility/new_structured_format_-_nar_method
niks3-go-unit-tests> === CONT TestGetStorePathHash/hash_with_wrong_length_should_error
niks3-go-unit-tests> === CONT TestGetStorePathHash/basename_without_hyphen_should_error
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSON/Nix_format
niks3-go-unit-tests> === RUN TestParsePathInfoJSON/Lix_format
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSON/Lix_format
niks3-go-unit-tests> === RUN TestParsePathInfoJSON/empty_input
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSON/empty_input
niks3-go-unit-tests> === RUN TestParsePathInfoJSON/whitespace_only
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSON/whitespace_only
niks3-go-unit-tests> === RUN TestParsePathInfoJSON/invalid_JSON
niks3-go-unit-tests> === PAUSE TestParsePathInfoJSON/invalid_JSON
niks3-go-unit-tests> === CONT TestConvertHashToNix32/SRI_format_to_Nix32
niks3-go-unit-tests> === CONT TestPathInfoCACompatibility/old_string_format_-_fixed_recursive
niks3-go-unit-tests> === CONT TestConvertHashToNix32/already_Nix32_format
niks3-go-unit-tests> === CONT TestUploadMultipart_SupersededByPeer/exists
niks3-go-unit-tests> === CONT TestPartSizeForNAR
niks3-go-unit-tests> === CONT TestGetStorePathHash/hash_with_invalid_characters_should_error
niks3-go-unit-tests> --- PASS: TestGetStorePathHash (0.00s)
niks3-go-unit-tests> --- PASS: TestGetStorePathHash/valid_store_path (0.00s)
niks3-go-unit-tests> --- PASS: TestGetStorePathHash/hash_with_wrong_length_should_error (0.00s)
niks3-go-unit-tests> --- PASS: TestGetStorePathHash/basename_without_hyphen_should_error (0.00s)
niks3-go-unit-tests> --- PASS: TestGetStorePathHash/hash_with_invalid_characters_should_error (0.00s)
niks3-go-unit-tests> === CONT TestUploadMultipart_SupersededByPeer/missing
niks3-go-unit-tests> === CONT TestParsePathInfoJSON/Nix_format
niks3-go-unit-tests> === CONT TestParsePathInfoJSON/invalid_JSON
niks3-go-unit-tests> === CONT TestParsePathInfoJSON/whitespace_only
niks3-go-unit-tests> === CONT TestParsePathInfoJSON/empty_input
niks3-go-unit-tests> === CONT TestParsePathInfoJSON/Lix_format
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSON (0.01s)
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSON/Nix_format (0.00s)
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSON/invalid_JSON (0.00s)
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSON/whitespace_only (0.00s)
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSON/empty_input (0.00s)
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSON/Lix_format (0.00s)
niks3-go-unit-tests> === CONT TestConvertHashToNix32/invalid_format
niks3-go-unit-tests> === PAUSE TestFilterOversizedClosures/all_closures_skipped
niks3-go-unit-tests> === CONT TestFilterOversizedClosures/no_limit_keeps_everything
niks3-go-unit-tests> === RUN TestSetClientTLS/rejects_connection_without_client_cert
niks3-go-unit-tests> === CONT TestFilterOversizedClosures/closure_with_oversized_dependency_is_skipped
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Skipping closure: path exceeds server max NAR size top_level_path=/nix/store/cccccccccccccccccccccccccccccccc-wrapper oversized_path=/nix/store/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-vm-image nar_size=5000 max_nar_size=2000
niks3-go-unit-tests> === CONT TestFilterOversizedClosures/all_closures_skipped
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Skipping closure: path exceeds server max NAR size top_level_path=/nix/store/cccccccccccccccccccccccccccccccc-wrapper oversized_path=/nix/store/cccccccccccccccccccccccccccccccc-wrapper nar_size=100 max_nar_size=50
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSONMultiplePaths (0.00s)
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSONMultiplePaths/Lix_multiple_paths (0.00s)
niks3-go-unit-tests> --- PASS: TestParsePathInfoJSONMultiplePaths/Nix_multiple_paths (0.02s)
niks3-go-unit-tests> === RUN TestPartSizeForNAR/zero_stays_at_minimum
niks3-go-unit-tests> === PAUSE TestSetClientTLS/rejects_connection_without_client_cert
niks3-go-unit-tests> === RUN TestSetClientTLS/succeeds_with_client_cert_and_CA
niks3-go-unit-tests> === PAUSE TestPathInfoHashCompatibility/new_structured_format_-_converts_to_SRI
niks3-go-unit-tests> --- PASS: TestConvertHashToNix32 (0.01s)
niks3-go-unit-tests> --- PASS: TestConvertHashToNix32/SRI_format_to_Nix32 (0.00s)
niks3-go-unit-tests> --- PASS: TestConvertHashToNix32/already_Nix32_format (0.00s)
niks3-go-unit-tests> --- PASS: TestConvertHashToNix32/invalid_format (0.00s)
niks3-go-unit-tests> === RUN TestPathInfoHashCompatibility/new_structured_format_with_sha512
niks3-go-unit-tests> === PAUSE TestPathInfoHashCompatibility/new_structured_format_with_sha512
niks3-go-unit-tests> === CONT TestPathInfoHashCompatibility/new_structured_format_with_sha512
niks3-go-unit-tests> === CONT TestPathInfoHashCompatibility/new_structured_format_-_converts_to_SRI
niks3-go-unit-tests> --- PASS: TestScriptTokenEmptyToken (0.03s)
niks3-go-unit-tests> --- PASS: TestFilterOversizedClosures (0.02s)
niks3-go-unit-tests> --- PASS: TestFilterOversizedClosures/no_limit_keeps_everything (0.00s)
niks3-go-unit-tests> --- PASS: TestFilterOversizedClosures/closure_with_oversized_dependency_is_skipped (0.00s)
niks3-go-unit-tests> --- PASS: TestFilterOversizedClosures/all_closures_skipped (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoCACompatibility (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoCACompatibility/new_structured_format_-_text (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoCACompatibility/old_string_format_-_text (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoCACompatibility/new_structured_format_-_nar_method (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoCACompatibility/old_string_format_-_fixed_recursive (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoCACompatibility/null_ca_field (0.02s)
niks3-go-unit-tests> --- PASS: TestDoWithRetry_BodyReplayedViaGetBody (0.03s)
niks3-go-unit-tests> --- PASS: TestSetClientTLSDoesNotMutateDefaultTransport (0.02s)
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Rate limiter enabled after throttle name=server-test rate=5
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Request returned retryable status, retrying attempt=1 max_attempts=2 backoff=0s status=503 url=http://127.0.0.1:39953
niks3-go-unit-tests> === CONT TestPathInfoHashCompatibility/old_string_format_with_dash_(SRI)
niks3-go-unit-tests> === CONT TestPathInfoHashCompatibility/old_string_format_with_colon
niks3-go-unit-tests> --- PASS: TestScriptTokenCachesUntilRefresh (0.04s)
niks3-go-unit-tests> --- PASS: TestScriptTokenBadJSON (0.04s)
niks3-go-unit-tests> === RUN TestSetClientTLSErrors/missing_cert_file
niks3-go-unit-tests> === PAUSE TestSetClientTLSErrors/missing_cert_file
niks3-go-unit-tests> === RUN TestSetClientTLSErrors/missing_key_file
niks3-go-unit-tests> === PAUSE TestSetClientTLSErrors/missing_key_file
niks3-go-unit-tests> === RUN TestSetClientTLSErrors/missing_ca_file
niks3-go-unit-tests> === PAUSE TestSetClientTLSErrors/missing_ca_file
niks3-go-unit-tests> === RUN TestSetClientTLSErrors/invalid_ca_file
niks3-go-unit-tests> === PAUSE TestSetClientTLSErrors/invalid_ca_file
niks3-go-unit-tests> === CONT TestSetClientTLSErrors/missing_cert_file
niks3-go-unit-tests> --- PASS: TestPathInfoHashCompatibility (0.03s)
niks3-go-unit-tests> --- PASS: TestPathInfoHashCompatibility/new_structured_format_with_sha512 (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoHashCompatibility/new_structured_format_-_converts_to_SRI (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoHashCompatibility/old_string_format_with_dash_(SRI) (0.00s)
niks3-go-unit-tests> --- PASS: TestPathInfoHashCompatibility/old_string_format_with_colon (0.00s)
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR/zero_stays_at_minimum
niks3-go-unit-tests> === RUN TestPartSizeForNAR/small_stays_at_minimum
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR/small_stays_at_minimum
niks3-go-unit-tests> === RUN TestPartSizeForNAR/80_GiB_fits_at_minimum
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR/80_GiB_fits_at_minimum
niks3-go-unit-tests> === RUN TestPartSizeForNAR/115_GiB_needs_larger_parts
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR/115_GiB_needs_larger_parts
niks3-go-unit-tests> === RUN TestPartSizeForNAR/1_TiB
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR/1_TiB
niks3-go-unit-tests> === RUN TestPartSizeForNAR/5_TiB_S3_max_object
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR/5_TiB_S3_max_object
niks3-go-unit-tests> === RUN TestPartSizeForNAR/capped_at_5_GiB
niks3-go-unit-tests> === PAUSE TestPartSizeForNAR/capped_at_5_GiB
niks3-go-unit-tests> === CONT TestPartSizeForNAR/zero_stays_at_minimum
niks3-go-unit-tests> === CONT TestSetClientTLSErrors/invalid_ca_file
niks3-go-unit-tests> === CONT TestSetClientTLSErrors/missing_ca_file
niks3-go-unit-tests> === CONT TestSetClientTLSErrors/missing_key_file
niks3-go-unit-tests> === PAUSE TestSetClientTLS/succeeds_with_client_cert_and_CA
niks3-go-unit-tests> --- PASS: TestSetClientTLSErrors (0.03s)
niks3-go-unit-tests> --- PASS: TestSetClientTLSErrors/missing_cert_file (0.00s)
niks3-go-unit-tests> --- PASS: TestSetClientTLSErrors/invalid_ca_file (0.00s)
niks3-go-unit-tests> --- PASS: TestSetClientTLSErrors/missing_ca_file (0.00s)
niks3-go-unit-tests> --- PASS: TestSetClientTLSErrors/missing_key_file (0.00s)
niks3-go-unit-tests> === CONT TestPartSizeForNAR/capped_at_5_GiB
niks3-go-unit-tests> === CONT TestPartSizeForNAR/1_TiB
niks3-go-unit-tests> === CONT TestPartSizeForNAR/5_TiB_S3_max_object
niks3-go-unit-tests> === CONT TestPartSizeForNAR/115_GiB_needs_larger_parts
niks3-go-unit-tests> === CONT TestPartSizeForNAR/small_stays_at_minimum
niks3-go-unit-tests> === CONT TestPartSizeForNAR/80_GiB_fits_at_minimum
niks3-go-unit-tests> === RUN TestSetClientTLS/preserves_debug_logging_transport
niks3-go-unit-tests> === PAUSE TestSetClientTLS/preserves_debug_logging_transport
niks3-go-unit-tests> === CONT TestSetClientTLS/rejects_connection_without_client_cert
niks3-go-unit-tests> 2026/08/27 09:40:41 WARN Rate limiter backed off name=server-test rate=5
niks3-go-unit-tests> === CONT TestSetClientTLS/preserves_debug_logging_transport
niks3-go-unit-tests> --- PASS: TestRateLimiterFeedback (0.00s)
niks3-go-unit-tests> --- PASS: TestRateLimiterFeedback/429_enables_limiter (0.01s)
niks3-go-unit-tests> --- PASS: TestRateLimiterFeedback/400_does_not_enable_limiter (0.00s)
niks3-go-unit-tests> --- PASS: TestRateLimiterFeedback/200_does_not_enable_limiter (0.04s)
niks3-go-unit-tests> --- PASS: TestRateLimiterFeedback/503_enables_limiter (0.04s)
niks3-go-unit-tests> === CONT TestSetClientTLS/succeeds_with_client_cert_and_CA
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR (0.01s)
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR/zero_stays_at_minimum (0.00s)
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR/capped_at_5_GiB (0.00s)
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR/1_TiB (0.00s)
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR/5_TiB_S3_max_object (0.00s)
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR/115_GiB_needs_larger_parts (0.00s)
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR/small_stays_at_minimum (0.00s)
niks3-go-unit-tests> --- PASS: TestPartSizeForNAR/80_GiB_fits_at_minimum (0.00s)
niks3-go-unit-tests> --- PASS: TestDumpPathSingleFile (0.05s)
niks3-go-unit-tests> --- PASS: TestScriptTokenNoExpiryRerunsEveryCall (0.05s)
niks3-go-unit-tests> --- PASS: TestUploadMultipart_SupersededByPeer (0.01s)
niks3-go-unit-tests> --- PASS: TestUploadMultipart_SupersededByPeer/missing (0.03s)
niks3-go-unit-tests> --- PASS: TestUploadMultipart_SupersededByPeer/exists (0.03s)
niks3-go-unit-tests> 2026/08/27 09:40:41 http: TLS handshake error from 127.0.0.1:49456: remote error: tls: bad certificate
niks3-go-unit-tests> --- PASS: TestSetClientTLS (0.04s)
niks3-go-unit-tests> --- PASS: TestSetClientTLS/preserves_debug_logging_transport (0.01s)
niks3-go-unit-tests> --- PASS: TestSetClientTLS/succeeds_with_client_cert_and_CA (0.01s)
niks3-go-unit-tests> --- PASS: TestSetClientTLS/rejects_connection_without_client_cert (0.01s)
niks3-go-unit-tests> --- PASS: TestCaseHackSuffix (0.05s)
niks3-go-unit-tests> --- PASS: TestDumpPathWriterError (0.06s)
niks3-go-unit-tests> --- PASS: TestDumpPathMatchesNix (0.10s)
niks3-go-unit-tests> --- PASS: TestRateLimiterFeedback_400DoesNotCountAsSuccess (1.00s)
niks3-go-unit-tests> PASS
niks3-go-unit-tests> Running server tests...
niks3-go-unit-tests> The files belonging to this database system will be owned by user "nixbld".
niks3-go-unit-tests> This user must also own the server process.
niks3-go-unit-tests>
niks3-go-unit-tests> The database cluster will be initialized with locale "C".
niks3-go-unit-tests> The default database encoding has accordingly been set to "SQL_ASCII".
niks3-go-unit-tests> The default text search configuration will be set to "english".
niks3-go-unit-tests>
niks3-go-unit-tests> Data page checksums are enabled.
niks3-go-unit-tests>
niks3-go-unit-tests> creating directory /build/postgres1349034995/data ... ok
niks3-go-unit-tests> creating subdirectories ... ok
niks3-go-unit-tests> selecting dynamic shared memory implementation ... posix
niks3-go-unit-tests> selecting default "max_connections" ... 100
niks3-go-unit-tests> selecting default "shared_buffers" ... 128MB
niks3-go-unit-tests> selecting default time zone ... UTC
niks3-go-unit-tests> creating configuration files ... ok
niks3-go-unit-tests> running bootstrap script ... ok
niks3-go-unit-tests> performing post-bootstrap initialization ... ok
niks3-go-unit-tests> syncing data to disk ... ok
niks3-go-unit-tests>
niks3-go-unit-tests> initdb: warning: enabling "trust" authentication for local connections
niks3-go-unit-tests> initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
niks3-go-unit-tests>
niks3-go-unit-tests> Success. You can now start the database server using:
niks3-go-unit-tests>
niks3-go-unit-tests> pg_ctl -D /build/postgres1349034995/data -l logfile start
niks3-go-unit-tests>
niks3-go-unit-tests> /build/postgres1349034995:5432 - no response
niks3-go-unit-tests> 2026-08-27 09:40:43.411 UTC [106] LOG: starting PostgreSQL 18.4 on aarch64-unknown-linux-gnu, compiled by clang version 21.1.8, 64-bit
niks3-go-unit-tests> 2026-08-27 09:40:43.412 UTC [106] LOG: listening on Unix socket "/build/postgres1349034995/.s.PGSQL.5432"
niks3-go-unit-tests> 2026-08-27 09:40:43.418 UTC [113] LOG: database system was shut down at 2026-08-27 09:40:42 UTC
niks3-go-unit-tests> 2026-08-27 09:40:43.422 UTC [106] LOG: database system is ready to accept connections
niks3-go-unit-tests> /build/postgres1349034995:5432 - accepting connections
niks3-go-unit-tests> === RUN TestService_AuthMiddleware
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware
niks3-go-unit-tests> === RUN TestService_AuthMiddleware_MTLSProxyHeader
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware_MTLSProxyHeader
niks3-go-unit-tests> === RUN TestService_AuthMiddleware_MTLSBoundSubjects
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware_MTLSBoundSubjects
niks3-go-unit-tests> === RUN TestService_ReadAuthMiddleware
niks3-go-unit-tests> === PAUSE TestService_ReadAuthMiddleware
niks3-go-unit-tests> === RUN TestService_AuthMiddleware_OIDC
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware_OIDC
niks3-go-unit-tests> === RUN TestCacheConfigHandler
niks3-go-unit-tests> === PAUSE TestCacheConfigHandler
niks3-go-unit-tests> === RUN TestCacheStatsHandler
niks3-go-unit-tests> === PAUSE TestCacheStatsHandler
niks3-go-unit-tests> === RUN TestClientCADerivations
niks3-go-unit-tests> === PAUSE TestClientCADerivations
niks3-go-unit-tests> === RUN TestClientErrorHandling
niks3-go-unit-tests> === PAUSE TestClientErrorHandling
niks3-go-unit-tests> === RUN TestClientIntegration
niks3-go-unit-tests> === PAUSE TestClientIntegration
niks3-go-unit-tests> === RUN TestClientMultipleUploads
niks3-go-unit-tests> === PAUSE TestClientMultipleUploads
niks3-go-unit-tests> === RUN TestClientWithDependencies
niks3-go-unit-tests> === PAUSE TestClientWithDependencies
niks3-go-unit-tests> === RUN TestPinProtectsFromGC
niks3-go-unit-tests> === PAUSE TestPinProtectsFromGC
niks3-go-unit-tests> === RUN TestGCAdvisoryLockBlocksConcurrentRun
niks3-go-unit-tests> 2026-08-27 09:40:48.674 UTC [514] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:48.674 UTC [514] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:48 OK 20241026095416_initial_model.sql (9.21ms)
niks3-go-unit-tests> 2026/08/27 09:40:48 OK 20251210153512_drop_unused_gin_index.sql (2.57ms)
niks3-go-unit-tests> 2026/08/27 09:40:48 OK 20251218171726_add_pins.sql (3.4ms)
niks3-go-unit-tests> 2026/08/27 09:40:48 OK 20260628120000_add_object_size_and_stats.sql (2.33ms)
niks3-go-unit-tests> 2026/08/27 09:40:48 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:48 OK 1_commit_pending_closure.sql (1.74ms)
niks3-go-unit-tests> 2026/08/27 09:40:48 OK 2_object_stats_trigger.sql (745.25µs)
niks3-go-unit-tests> 2026/08/27 09:40:48 goose: up to current file version: 2
niks3-go-unit-tests> --- PASS: TestGCAdvisoryLockBlocksConcurrentRun (0.79s)
niks3-go-unit-tests> === RUN TestGCBugBareHashReferences
niks3-go-unit-tests> === PAUSE TestGCBugBareHashReferences
niks3-go-unit-tests> === RUN TestGCMetrics
niks3-go-unit-tests> === PAUSE TestGCMetrics
niks3-go-unit-tests> === RUN TestGCTaskStore_StartNew
niks3-go-unit-tests> === PAUSE TestGCTaskStore_StartNew
niks3-go-unit-tests> === RUN TestGCTaskStore_DeduplicateSameParams
niks3-go-unit-tests> === PAUSE TestGCTaskStore_DeduplicateSameParams
niks3-go-unit-tests> === RUN TestGCTaskStore_ConflictDifferentParams
niks3-go-unit-tests> === PAUSE TestGCTaskStore_ConflictDifferentParams
niks3-go-unit-tests> === RUN TestGCTaskStore_GetEmpty
niks3-go-unit-tests> === PAUSE TestGCTaskStore_GetEmpty
niks3-go-unit-tests> === RUN TestGCTaskStore_GetReturnsLatest
niks3-go-unit-tests> === PAUSE TestGCTaskStore_GetReturnsLatest
niks3-go-unit-tests> === RUN TestGCTaskStore_CompletedAllowsNewTask
niks3-go-unit-tests> === PAUSE TestGCTaskStore_CompletedAllowsNewTask
niks3-go-unit-tests> === RUN TestGCTaskStore_PhaseUpdates
niks3-go-unit-tests> === PAUSE TestGCTaskStore_PhaseUpdates
niks3-go-unit-tests> === RUN TestGCTaskStore_Fail
niks3-go-unit-tests> === PAUSE TestGCTaskStore_Fail
niks3-go-unit-tests> === RUN TestGracefulShutdownDrainsInflight
niks3-go-unit-tests> === PAUSE TestGracefulShutdownDrainsInflight
niks3-go-unit-tests> === RUN TestService_healthCheckHandler
niks3-go-unit-tests> === PAUSE TestService_healthCheckHandler
niks3-go-unit-tests> === RUN TestGenerateLandingPage
niks3-go-unit-tests> === PAUSE TestGenerateLandingPage
niks3-go-unit-tests> === RUN TestCacheConfigHandlerMaxNarSize
niks3-go-unit-tests> === PAUSE TestCacheConfigHandlerMaxNarSize
niks3-go-unit-tests> === RUN TestCreatePendingClosureRejectsOversizedNAR
niks3-go-unit-tests> === PAUSE TestCreatePendingClosureRejectsOversizedNAR
niks3-go-unit-tests> === RUN TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> === PAUSE TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> === RUN TestMetricsInventory
niks3-go-unit-tests> === PAUSE TestMetricsInventory
niks3-go-unit-tests> === RUN TestService_NativeMTLS
niks3-go-unit-tests> === PAUSE TestService_NativeMTLS
niks3-go-unit-tests> === RUN TestServerTLSConfig
niks3-go-unit-tests> === PAUSE TestServerTLSConfig
niks3-go-unit-tests> === RUN TestMultipartCleanup
niks3-go-unit-tests> === PAUSE TestMultipartCleanup
niks3-go-unit-tests> === RUN TestObjectStatsTrigger
niks3-go-unit-tests> === PAUSE TestObjectStatsTrigger
niks3-go-unit-tests> === RUN TestOrphanedObjectsGC
niks3-go-unit-tests> === PAUSE TestOrphanedObjectsGC
niks3-go-unit-tests> === RUN TestOrphanedObjectsGCStressTest
niks3-go-unit-tests> === PAUSE TestOrphanedObjectsGCStressTest
niks3-go-unit-tests> === RUN TestResurrectedObjectNotDeleted
niks3-go-unit-tests> === PAUSE TestResurrectedObjectNotDeleted
niks3-go-unit-tests> === RUN TestParseSingleRange
niks3-go-unit-tests> === PAUSE TestParseSingleRange
niks3-go-unit-tests> === RUN TestIsValidCachePath
niks3-go-unit-tests> === PAUSE TestIsValidCachePath
niks3-go-unit-tests> === RUN TestReadProxyNarinfo
niks3-go-unit-tests> === PAUSE TestReadProxyNarinfo
niks3-go-unit-tests> === RUN TestReadProxyNarinfoAlreadyDecompressed
niks3-go-unit-tests> === PAUSE TestReadProxyNarinfoAlreadyDecompressed
niks3-go-unit-tests> === RUN TestReadProxyNarStreaming
niks3-go-unit-tests> === PAUSE TestReadProxyNarStreaming
niks3-go-unit-tests> === RUN TestReadProxy404
niks3-go-unit-tests> === PAUSE TestReadProxy404
niks3-go-unit-tests> === RUN TestReadProxyInvalidPath
niks3-go-unit-tests> === PAUSE TestReadProxyInvalidPath
niks3-go-unit-tests> === RUN TestReadProxyHead
niks3-go-unit-tests> === PAUSE TestReadProxyHead
niks3-go-unit-tests> === RUN TestReadProxyConditionalGet
niks3-go-unit-tests> === PAUSE TestReadProxyConditionalGet
niks3-go-unit-tests> === RUN TestReadProxyRootRedirectsToIndexHTML
niks3-go-unit-tests> === PAUSE TestReadProxyRootRedirectsToIndexHTML
niks3-go-unit-tests> === RUN TestReadProxyDisabled
niks3-go-unit-tests> === PAUSE TestReadProxyDisabled
niks3-go-unit-tests> === RUN TestReadRedirectNar
niks3-go-unit-tests> === PAUSE TestReadRedirectNar
niks3-go-unit-tests> === RUN TestReadRedirectKeepsNarinfoProxied
niks3-go-unit-tests> === PAUSE TestReadRedirectKeepsNarinfoProxied
niks3-go-unit-tests> === RUN TestReadProxyRangeRequest
niks3-go-unit-tests> === PAUSE TestReadProxyRangeRequest
niks3-go-unit-tests> === RUN TestRedundantMultipartUpload
niks3-go-unit-tests> === PAUSE TestRedundantMultipartUpload
niks3-go-unit-tests> === RUN TestCompleteMultipartUpload_ErrorButObjectExists
niks3-go-unit-tests> === PAUSE TestCompleteMultipartUpload_ErrorButObjectExists
niks3-go-unit-tests> === RUN TestCompletedNarNotReofferedAcrossClosures
niks3-go-unit-tests> === PAUSE TestCompletedNarNotReofferedAcrossClosures
niks3-go-unit-tests> === RUN TestPresignedUploadRegisteredBeforeCommit
niks3-go-unit-tests> === PAUSE TestPresignedUploadRegisteredBeforeCommit
niks3-go-unit-tests> === RUN TestService_Rustfstest
niks3-go-unit-tests> === PAUSE TestService_Rustfstest
niks3-go-unit-tests> === RUN TestParseSize
niks3-go-unit-tests> === PAUSE TestParseSize
niks3-go-unit-tests> === RUN TestSkippedUploadsHandler
niks3-go-unit-tests> === PAUSE TestSkippedUploadsHandler
niks3-go-unit-tests> === RUN TestSystemdListenerNotActivated
niks3-go-unit-tests> --- PASS: TestSystemdListenerNotActivated (0.00s)
niks3-go-unit-tests> === RUN TestWatchdogBeatsWhenHealthy
niks3-go-unit-tests> --- PASS: TestWatchdogBeatsWhenHealthy (0.02s)
niks3-go-unit-tests> === RUN TestWatchdogSkipsWhenUnhealthy
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> 2026/08/27 09:40:49 WARN watchdog liveness check failed, skipping heartbeat error="context deadline exceeded"
niks3-go-unit-tests> --- PASS: TestWatchdogSkipsWhenUnhealthy (0.20s)
niks3-go-unit-tests> === RUN TestCompleteMultipartUploadHandler_RateLimitTriggersThrottle
niks3-go-unit-tests> === PAUSE TestCompleteMultipartUploadHandler_RateLimitTriggersThrottle
niks3-go-unit-tests> === RUN TestProxyWriteTimeout
niks3-go-unit-tests> === PAUSE TestProxyWriteTimeout
niks3-go-unit-tests> === RUN TestIsValidUploadKey
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey
niks3-go-unit-tests> === RUN TestUploadHandlersRejectInvalidKeys
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectInvalidKeys
niks3-go-unit-tests> === RUN TestUploadHandlersRejectOversizedBody
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectOversizedBody
niks3-go-unit-tests> === RUN TestService_cleanupPendingClosuresHandler
niks3-go-unit-tests> === PAUSE TestService_cleanupPendingClosuresHandler
niks3-go-unit-tests> === RUN TestService_createPendingClosureHandler
niks3-go-unit-tests> === PAUSE TestService_createPendingClosureHandler
niks3-go-unit-tests> === RUN TestService_verifyS3Integrity
niks3-go-unit-tests> === PAUSE TestService_verifyS3Integrity
niks3-go-unit-tests> === RUN TestCompleteMultipartUnregistered
niks3-go-unit-tests> === PAUSE TestCompleteMultipartUnregistered
niks3-go-unit-tests> === RUN TestCreatePendingClosure_SmallNARUsesSimplePUT
niks3-go-unit-tests> === PAUSE TestCreatePendingClosure_SmallNARUsesSimplePUT
niks3-go-unit-tests> === CONT TestService_AuthMiddleware
niks3-go-unit-tests> === CONT TestRedundantMultipartUpload
niks3-go-unit-tests> === CONT TestCreatePendingClosure_SmallNARUsesSimplePUT
niks3-go-unit-tests> === CONT TestCompleteMultipartUnregistered
niks3-go-unit-tests> === CONT TestService_verifyS3Integrity
niks3-go-unit-tests> === CONT TestService_createPendingClosureHandler
niks3-go-unit-tests> === CONT TestService_cleanupPendingClosuresHandler
niks3-go-unit-tests> === CONT TestUploadHandlersRejectOversizedBody
niks3-go-unit-tests> === CONT TestUploadHandlersRejectInvalidKeys
niks3-go-unit-tests> === RUN TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_nix-cache-info
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_nix-cache-info
niks3-go-unit-tests> === RUN TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_path_traversal
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_path_traversal
niks3-go-unit-tests> === RUN TestUploadHandlersRejectInvalidKeys/complete_multipart_rejects_non-NAR_key
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectInvalidKeys/complete_multipart_rejects_non-NAR_key
niks3-go-unit-tests> === RUN TestUploadHandlersRejectInvalidKeys/request_more_parts_rejects_non-NAR_key
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectInvalidKeys/request_more_parts_rejects_non-NAR_key
niks3-go-unit-tests> === CONT TestIsValidUploadKey
niks3-go-unit-tests> === RUN TestIsValidUploadKey/narinfo
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/narinfo
niks3-go-unit-tests> === RUN TestIsValidUploadKey/nar_zst
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/nar_zst
niks3-go-unit-tests> === RUN TestIsValidUploadKey/nar_xz
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/nar_xz
niks3-go-unit-tests> === RUN TestIsValidUploadKey/nar_plain
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/nar_plain
niks3-go-unit-tests> === RUN TestIsValidUploadKey/listing
niks3-go-unit-tests> === CONT TestProxyWriteTimeout
niks3-go-unit-tests> === CONT TestCompleteMultipartUploadHandler_RateLimitTriggersThrottle
niks3-go-unit-tests> === CONT TestSkippedUploadsHandler
niks3-go-unit-tests> === CONT TestParseSize
niks3-go-unit-tests> === CONT TestService_Rustfstest
niks3-go-unit-tests> === CONT TestPresignedUploadRegisteredBeforeCommit
niks3-go-unit-tests> === CONT TestCompletedNarNotReofferedAcrossClosures
niks3-go-unit-tests> === CONT TestCompleteMultipartUpload_ErrorButObjectExists
niks3-go-unit-tests> === CONT TestReadProxyInvalidPath
niks3-go-unit-tests> === CONT TestReadProxyRangeRequest
niks3-go-unit-tests> === CONT TestReadRedirectKeepsNarinfoProxied
niks3-go-unit-tests> === CONT TestReadRedirectNar
niks3-go-unit-tests> === CONT TestReadProxyDisabled
niks3-go-unit-tests> === CONT TestReadProxyRootRedirectsToIndexHTML
niks3-go-unit-tests> === CONT TestReadProxyConditionalGet
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/listing
niks3-go-unit-tests> === RUN TestIsValidUploadKey/build_log
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/build_log
niks3-go-unit-tests> === RUN TestIsValidUploadKey/build_log_home-manager_file
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/build_log_home-manager_file
niks3-go-unit-tests> === RUN TestIsValidUploadKey/build_log_plus_in_name
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/build_log_plus_in_name
niks3-go-unit-tests> === RUN TestIsValidUploadKey/build_log_question_mark
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/build_log_question_mark
niks3-go-unit-tests> === RUN TestIsValidUploadKey/build_log_equals
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/build_log_equals
niks3-go-unit-tests> === RUN TestIsValidUploadKey/realisation
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/realisation
niks3-go-unit-tests> === RUN TestIsValidUploadKey/realisation_plus_in_output
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/realisation_plus_in_output
niks3-go-unit-tests> === RUN TestIsValidUploadKey/nix-cache-info
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/nix-cache-info
niks3-go-unit-tests> --- PASS: TestParseSize (0.00s)
niks3-go-unit-tests> === CONT TestReadProxyHead
niks3-go-unit-tests> === RUN TestIsValidUploadKey/index.html
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/index.html
niks3-go-unit-tests> === RUN TestIsValidUploadKey/narinfo_key,_nar_type
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/narinfo_key,_nar_type
niks3-go-unit-tests> === RUN TestIsValidUploadKey/nar_key,_narinfo_type
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/nar_key,_narinfo_type
niks3-go-unit-tests> === RUN TestIsValidUploadKey/listing_key,_narinfo_type
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/listing_key,_narinfo_type
niks3-go-unit-tests> === RUN TestIsValidUploadKey/traversal
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/traversal
niks3-go-unit-tests> === RUN TestIsValidUploadKey/traversal_nar
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/traversal_nar
niks3-go-unit-tests> === RUN TestIsValidUploadKey/absolute
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/absolute
niks3-go-unit-tests> === RUN TestIsValidUploadKey/empty_key
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/empty_key
niks3-go-unit-tests> === RUN TestIsValidUploadKey/unknown_type
niks3-go-unit-tests> === PAUSE TestIsValidUploadKey/unknown_type
niks3-go-unit-tests> === CONT TestGCTaskStore_ConflictDifferentParams
niks3-go-unit-tests> --- PASS: TestGCTaskStore_ConflictDifferentParams (0.00s)
niks3-go-unit-tests> === CONT TestObjectStatsTrigger
niks3-go-unit-tests> 2026/08/27 09:40:49 INFO Client skipped oversized paths paths=3 nar_bytes=5000000000
niks3-go-unit-tests> === RUN TestProxyWriteTimeout/narinfo
niks3-go-unit-tests> === PAUSE TestProxyWriteTimeout/narinfo
niks3-go-unit-tests> === RUN TestProxyWriteTimeout/1_GiB_nar
niks3-go-unit-tests> === PAUSE TestProxyWriteTimeout/1_GiB_nar
niks3-go-unit-tests> === RUN TestProxyWriteTimeout/10_GiB_nar
niks3-go-unit-tests> === PAUSE TestProxyWriteTimeout/10_GiB_nar
niks3-go-unit-tests> === RUN TestProxyWriteTimeout/unknown_size
niks3-go-unit-tests> === PAUSE TestProxyWriteTimeout/unknown_size
niks3-go-unit-tests> === CONT TestMultipartCleanup
niks3-go-unit-tests> --- PASS: TestSkippedUploadsHandler (0.01s)
niks3-go-unit-tests> === CONT TestServerTLSConfig
niks3-go-unit-tests> === RUN TestServerTLSConfig/no_client_CA
niks3-go-unit-tests> === PAUSE TestServerTLSConfig/no_client_CA
niks3-go-unit-tests> === RUN TestServerTLSConfig/missing_CA_file
niks3-go-unit-tests> === PAUSE TestServerTLSConfig/missing_CA_file
niks3-go-unit-tests> === RUN TestServerTLSConfig/not_a_PEM_file
niks3-go-unit-tests> === PAUSE TestServerTLSConfig/not_a_PEM_file
niks3-go-unit-tests> === CONT TestService_NativeMTLS
niks3-go-unit-tests> === RUN TestUploadHandlersRejectOversizedBody/request_more_parts
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectOversizedBody/request_more_parts
niks3-go-unit-tests> === RUN TestUploadHandlersRejectOversizedBody/create_pending_closure
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectOversizedBody/create_pending_closure
niks3-go-unit-tests> === RUN TestUploadHandlersRejectOversizedBody/complete_multipart
niks3-go-unit-tests> === PAUSE TestUploadHandlersRejectOversizedBody/complete_multipart
niks3-go-unit-tests> === CONT TestMetricsInventory
niks3-go-unit-tests> 2026-08-27 09:40:49.844 UTC [589] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:49.844 UTC [589] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 20241026095416_initial_model.sql (42.25ms)
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 20251210153512_drop_unused_gin_index.sql (10.55ms)
niks3-go-unit-tests> 2026-08-27 09:40:49.941 UTC [595] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:49.941 UTC [595] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 20251218171726_add_pins.sql (8.28ms)
niks3-go-unit-tests> 2026-08-27 09:40:49.944 UTC [586] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:49.944 UTC [586] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 20260628120000_add_object_size_and_stats.sql (10.66ms)
niks3-go-unit-tests> 2026/08/27 09:40:49 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 20241026095416_initial_model.sql (11.06ms)
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 1_commit_pending_closure.sql (5.41ms)
niks3-go-unit-tests> 2026-08-27 09:40:49.962 UTC [592] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:49.962 UTC [592] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:49.962 UTC [594] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:49.962 UTC [594] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:49.970 UTC [590] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:49.970 UTC [590] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 20251210153512_drop_unused_gin_index.sql (12.95ms)
niks3-go-unit-tests> 2026/08/27 09:40:49 OK 2_object_stats_trigger.sql (15.49ms)
niks3-go-unit-tests> 2026/08/27 09:40:49 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:49.999 UTC [593] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:49.999 UTC [593] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:50.026 UTC [596] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.026 UTC [596] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:50.028 UTC [597] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.028 UTC [597] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:50.029 UTC [591] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.029 UTC [591] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (102.53ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (114.58ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (58.51ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (125.18ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.179 UTC [598] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.179 UTC [598] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (18ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (224.66ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (113.88ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 WARN Authentication failed token_preview=wrongtoken token_length=10 reason="static API token mismatch"
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware (0.59s)
niks3-go-unit-tests> === CONT TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (13.76ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (7.98ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (16.48ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (5.5ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (166.01ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (27.09ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (20.15ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received complete multipart upload request method=POST path=/api/multipart/complete
niks3-go-unit-tests> 2026/08/27 09:40:50 ERROR Failed to get multipart upload error="no rows in result set" upload_id=does-not-exist object_key=nar/0000000000000000000000000000000000000000000000000000.nar.zst
niks3-go-unit-tests> --- PASS: TestCompleteMultipartUnregistered (0.65s)
niks3-go-unit-tests> === CONT TestCreatePendingClosureRejectsOversizedNAR
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> --- PASS: TestCreatePendingClosureRejectsOversizedNAR (0.00s)
niks3-go-unit-tests> === CONT TestCacheConfigHandlerMaxNarSize
niks3-go-unit-tests> --- PASS: TestCacheConfigHandlerMaxNarSize (0.00s)
niks3-go-unit-tests> === CONT TestGenerateLandingPage
niks3-go-unit-tests> --- PASS: TestGenerateLandingPage (0.00s)
niks3-go-unit-tests> === CONT TestService_healthCheckHandler
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (58.48ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (126.59ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (255.5ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (213.17ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (15.57ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (15.7ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (107.36ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (18.37ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.347 UTC [603] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.347 UTC [603] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (68.88ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (154.35ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.357 UTC [604] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.357 UTC [604] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:50.360 UTC [605] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.360 UTC [605] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (188.83ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (52.8ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (179.21ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (31.05ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (213.66ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (48.86ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (68.47ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (24.7ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (83.3ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (33.56ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.421 UTC [606] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.421 UTC [606] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:50.421 UTC [607] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.421 UTC [607] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (70.78ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (54.96ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (11.51ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (66.57ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (39.08ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (14.65ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (18.77ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (48.02ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received cleanup request method=DELETE path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (13.13ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (12.87ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Aborted multipart uploads count=0
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (46.64ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (17.03ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (61.03ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.460 UTC [608] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.460 UTC [608] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (11.19ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (23.47ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (24.4ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (19.23ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (16.85ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.475 UTC [611] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.475 UTC [611] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (18.62ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (27.92ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (39.74ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (28.74ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (34.31ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (18.01ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (80.79ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (17.32ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (30.75ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (50.32ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (11.11ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:50.504 UTC [612] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.504 UTC [612] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (15.42ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (19.22ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received cleanup request method=DELETE path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Aborted multipart uploads count=1
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (45.9ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (47.01ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.542 UTC [586] ERROR: Closure does not exist: id=1
niks3-go-unit-tests> 2026-08-27 09:40:50.542 UTC [586] CONTEXT: PL/pgSQL function commit_pending_closure(bigint) line 16 at RAISE
niks3-go-unit-tests> 2026-08-27 09:40:50.542 UTC [586] STATEMENT: -- name: CommitPendingClosure :exec
niks3-go-unit-tests> SELECT commit_pending_closure($1::bigint)
niks3-go-unit-tests>
niks3-go-unit-tests> --- PASS: TestService_cleanupPendingClosuresHandler (0.94s)
niks3-go-unit-tests> === CONT TestGracefulShutdownDrainsInflight
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Starting HTTP server address=127.0.0.1:35831
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Shutdown signal received, draining in-flight requests timeout=10s
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (55.9ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (13.81ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (60.55ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (59.34ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (18.58ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (116.21ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.561 UTC [617] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.561 UTC [617] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (9.65ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.564 UTC [618] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.564 UTC [618] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (73.77ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (11.37ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> --- PASS: TestCreatePendingClosure_SmallNARUsesSimplePUT (0.96s)
niks3-go-unit-tests> === CONT TestGCTaskStore_Fail
niks3-go-unit-tests> --- PASS: TestGCTaskStore_Fail (0.00s)
niks3-go-unit-tests> === CONT TestGCTaskStore_PhaseUpdates
niks3-go-unit-tests> --- PASS: TestGCTaskStore_PhaseUpdates (0.00s)
niks3-go-unit-tests> === CONT TestGCTaskStore_CompletedAllowsNewTask
niks3-go-unit-tests> --- PASS: TestGCTaskStore_CompletedAllowsNewTask (0.00s)
niks3-go-unit-tests> === CONT TestGCTaskStore_GetReturnsLatest
niks3-go-unit-tests> --- PASS: TestGCTaskStore_GetReturnsLatest (0.00s)
niks3-go-unit-tests> === CONT TestGCTaskStore_GetEmpty
niks3-go-unit-tests> --- PASS: TestGCTaskStore_GetEmpty (0.00s)
niks3-go-unit-tests> === CONT TestReadProxyNarinfo
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (12.03ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (24.66ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (15.87ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (9.18ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (3.98ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (9.96ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:50.578 UTC [620] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.578 UTC [620] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (18.05ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (25.89ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (19.45ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026-08-27 09:40:50.585 UTC [623] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.585 UTC [623] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:50.586 UTC [621] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.586 UTC [621] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (7.74ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (27.51ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (11.18ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (29.82ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (17.2ms)
niks3-go-unit-tests> 2026-08-27 09:40:50.595 UTC [624] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.595 UTC [624] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> --- PASS: TestReadRedirectKeepsNarinfoProxied (0.92s)
niks3-go-unit-tests> === CONT TestReadProxy404
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (15.15ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (11.76ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026-08-27 09:40:50.609 UTC [626] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.609 UTC [626] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (8.15ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (13.85ms)
niks3-go-unit-tests> --- PASS: TestGracefulShutdownDrainsInflight (0.07s)
niks3-go-unit-tests> === CONT TestReadProxyNarStreaming
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (22.07ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (22.94ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (38.65ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (59.21ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (54.63ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (45.49ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (37.33ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (45.56ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (38.91ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (71.72ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (58.41ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (57.05ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (63.57ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (6.15ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (10.78ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (13.6ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (7.29ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (10.39ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (24.22ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (24.1ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (32.37ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (32.25ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (27.45ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (47.17ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (17.72ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (35.7ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (35.58ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (24.63ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (60.46ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (23.05ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (21.46ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (11.91ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (15.39ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (30.41ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (40.31ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (40.34ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (99.19ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (49.51ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (19.47ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (30.97ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (10.71ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (25.03ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (22.83ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (25.76ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:50.791 UTC [631] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.791 UTC [631] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (25.73ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (9.32ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (11.18ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (11.73ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (2.73ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:50.811 UTC [632] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.811 UTC [632] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (8.5ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (9.43ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026-08-27 09:40:50.814 UTC [630] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:50.814 UTC [630] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (6.21ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (7.14ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (8.43ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (37.01ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (20.32ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (9.7ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (50.57ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20241026095416_initial_model.sql (34.37ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (6.07ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (2.51ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251210153512_drop_unused_gin_index.sql (3.63ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (4.29ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (4.17ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (1.33ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20251218171726_add_pins.sql (5.19ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (3.07ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (2.12ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (8.1ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 20260628120000_add_object_size_and_stats.sql (17.58ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 1_commit_pending_closure.sql (2.93ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 OK 2_object_stats_trigger.sql (4.01ms)
niks3-go-unit-tests> 2026/08/27 09:40:50 goose: up to current file version: 2
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104807796Z","level":"ERROR","duration":"678.066µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104858896Z","level":"ERROR","duration":"739.286µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(298)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104858076Z","level":"ERROR","duration":"687.246µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(313)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104875996Z","level":"ERROR","duration":"558.925µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104914497Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"faa0f499-a225-4325-9000-ac889157cbbc","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket17/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104918357Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"bfcb1431-51c9-459f-a8a9-694e73d14797","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket29/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(298)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104918897Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"b78c9122-6157-4ed3-b707-0d68a4c965c8","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket22/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.104990897Z","level":"ERROR","duration":"1.21825ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(380)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105022617Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"9700a4f4-466b-4666-b4eb-84d43e75288b","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket18/","status_code":503,"duration_ms":1,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(380)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105039338Z","level":"ERROR","duration":"1.267051ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105057018Z","level":"ERROR","duration":"1.09139ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105060638Z","level":"ERROR","duration":"579.125µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105067738Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"5c498d38-4726-4f3d-86a3-2077ca14cfb5","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket25/","status_code":503,"duration_ms":1,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105074318Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"b8019e25-972d-4597-82de-7243ba335ef3","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket27/","status_code":503,"duration_ms":1,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105072158Z","level":"ERROR","duration":"548.025µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(298)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105078918Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"e35502c6-42ae-4c06-a857-aa1a84681ad2","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket20/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105089498Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"6ac33738-9b81-494f-9853-c459b7a8bce7","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket26/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(298)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105124298Z","level":"ERROR","duration":"185.401µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105149299Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"15de83a8-04a5-465e-89fa-19b8b568247e","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket23/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105165599Z","level":"ERROR","duration":"279.723µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(298)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105180699Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"62a9654e-5132-4665-aa45-8284ea9de9bb","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket24/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(298)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.105228759Z","level":"ERROR","duration":"862.647µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.10525976Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"f98e17ce-8621-4c42-ad97-9a722b00254b","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket21/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 WARN mTLS auth: subject not in bound subjects subject="CN=reader"
niks3-go-unit-tests> 2026/08/27 09:40:51 WARN mTLS auth: subject not in bound subjects subject="CN=writer"
niks3-go-unit-tests> --- PASS: TestService_NativeMTLS (1.44s)
niks3-go-unit-tests> === CONT TestReadProxyNarinfoAlreadyDecompressed
niks3-go-unit-tests> --- PASS: TestReadProxyConditionalGet (1.45s)
niks3-go-unit-tests> === CONT TestParseSingleRange
niks3-go-unit-tests> === RUN TestParseSingleRange/none
niks3-go-unit-tests> === PAUSE TestParseSingleRange/none
niks3-go-unit-tests> === RUN TestParseSingleRange/unknown_unit
niks3-go-unit-tests> === PAUSE TestParseSingleRange/unknown_unit
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.108372407Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"16a71a9a-45d3-4c28-8a4d-b7ab66b03be8","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket30/","status_code":503,"duration_ms":4,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(313)"}
niks3-go-unit-tests> === RUN TestParseSingleRange/multi-range_ignored
niks3-go-unit-tests> === PAUSE TestParseSingleRange/multi-range_ignored
niks3-go-unit-tests> === RUN TestParseSingleRange/malformed_no_dash
niks3-go-unit-tests> === PAUSE TestParseSingleRange/malformed_no_dash
niks3-go-unit-tests> === RUN TestParseSingleRange/malformed_both_empty
niks3-go-unit-tests> === PAUSE TestParseSingleRange/malformed_both_empty
niks3-go-unit-tests> === RUN TestParseSingleRange/malformed_end_before_start
niks3-go-unit-tests> === PAUSE TestParseSingleRange/malformed_end_before_start
niks3-go-unit-tests> === RUN TestParseSingleRange/closed
niks3-go-unit-tests> === PAUSE TestParseSingleRange/closed
niks3-go-unit-tests> === RUN TestParseSingleRange/open-ended
niks3-go-unit-tests> === PAUSE TestParseSingleRange/open-ended
niks3-go-unit-tests> === RUN TestParseSingleRange/end_clamped_to_size
niks3-go-unit-tests> === PAUSE TestParseSingleRange/end_clamped_to_size
niks3-go-unit-tests> === RUN TestParseSingleRange/suffix
niks3-go-unit-tests> === PAUSE TestParseSingleRange/suffix
niks3-go-unit-tests> === RUN TestParseSingleRange/suffix_exceeds_size
niks3-go-unit-tests> === PAUSE TestParseSingleRange/suffix_exceeds_size
niks3-go-unit-tests> === RUN TestParseSingleRange/single_byte
niks3-go-unit-tests> === PAUSE TestParseSingleRange/single_byte
niks3-go-unit-tests> === RUN TestParseSingleRange/start_past_EOF
niks3-go-unit-tests> === PAUSE TestParseSingleRange/start_past_EOF
niks3-go-unit-tests> === RUN TestParseSingleRange/start_far_past_EOF
niks3-go-unit-tests> === PAUSE TestParseSingleRange/start_far_past_EOF
niks3-go-unit-tests> === CONT TestIsValidCachePath
niks3-go-unit-tests> === RUN TestIsValidCachePath/narinfo
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/narinfo
niks3-go-unit-tests> === RUN TestIsValidCachePath/narinfo_all_nix_base32_chars
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/narinfo_all_nix_base32_chars
niks3-go-unit-tests> === RUN TestIsValidCachePath/nar_zst
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/nar_zst
niks3-go-unit-tests> === RUN TestIsValidCachePath/nar_xz
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/nar_xz
niks3-go-unit-tests> === RUN TestIsValidCachePath/nar_bz2
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/nar_bz2
niks3-go-unit-tests> === RUN TestIsValidCachePath/nar_uncompressed
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/nar_uncompressed
niks3-go-unit-tests> === RUN TestIsValidCachePath/ls
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/ls
niks3-go-unit-tests> === RUN TestIsValidCachePath/log
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/log
niks3-go-unit-tests> === RUN TestIsValidCachePath/realisation
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/realisation
niks3-go-unit-tests> === RUN TestIsValidCachePath/nix-cache-info
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/nix-cache-info
niks3-go-unit-tests> === RUN TestIsValidCachePath/index.html
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/index.html
niks3-go-unit-tests> === RUN TestIsValidCachePath/traversal_parent
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/traversal_parent
niks3-go-unit-tests> === RUN TestIsValidCachePath/traversal_in_middle
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/traversal_in_middle
niks3-go-unit-tests> === RUN TestIsValidCachePath/invalid_char_e
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/invalid_char_e
niks3-go-unit-tests> === RUN TestIsValidCachePath/invalid_char_u
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/invalid_char_u
niks3-go-unit-tests> === RUN TestIsValidCachePath/random_path
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/random_path
niks3-go-unit-tests> === RUN TestIsValidCachePath/empty
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/empty
niks3-go-unit-tests> === RUN TestIsValidCachePath/leading_slash
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/leading_slash
niks3-go-unit-tests> === RUN TestIsValidCachePath/wrong_extension
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/wrong_extension
niks3-go-unit-tests> === RUN TestIsValidCachePath/short_hash
niks3-go-unit-tests> === PAUSE TestIsValidCachePath/short_hash
niks3-go-unit-tests> === CONT TestClientIntegration
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Registered completed upload object_key=nar/jjjjjjjjjjjjjjjjjjjjjjjjjjjjjj0100000000000000000000.nar.zst
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> --- PASS: TestPresignedUploadRegisteredBeforeCommit (1.45s)
niks3-go-unit-tests> === CONT TestGCTaskStore_DeduplicateSameParams
niks3-go-unit-tests> --- PASS: TestGCTaskStore_DeduplicateSameParams (0.00s)
niks3-go-unit-tests> === CONT TestGCTaskStore_StartNew
niks3-go-unit-tests> --- PASS: TestGCTaskStore_StartNew (0.00s)
niks3-go-unit-tests> === CONT TestGCMetrics
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.12007255Z","level":"ERROR","duration":"141.202µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.12012627Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"a0b0922a-c6c8-4d93-926b-1c4435b37a23","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket22/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.146756264Z","level":"ERROR","duration":"144.001µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.146810505Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"a7553f24-e054-4115-a2a2-99d9a335061a","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket17/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.147004287Z","level":"ERROR","duration":"219.082µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.147054887Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"67055464-fe36-4967-8d33-b26c749978d3","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket24/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Received complete multipart upload request method=POST path=/api/multipart/complete
niks3-go-unit-tests> 2026/08/27 09:40:51 WARN CompleteMultipartUpload errored but object exists; treating as success error="The specified key does not exist." object_key=nar/gggggggggggggggggggggggggggggg0300000000000000000000.nar.zst upload_id=OGQ1OWJkYzQtM2VkMy00MjMzLTlkZjMtMzYzZDk5MGRmNWJhLmU3NjUxNDZmLTg4ZGUtNDQyNS05NGM2LTZjZTQ0ZjA3ZWM5M3gxNzg3ODIzNjUwNzE4MTAzMzE3
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.199376327Z","level":"ERROR","duration":"164.562µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.199431247Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"1e6295d7-9473-44e0-96bd-523bcc60d1a1","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket29/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Completed multipart upload object_key=nar/gggggggggggggggggggggggggggggg0300000000000000000000.nar.zst upload_id=OGQ1OWJkYzQtM2VkMy00MjMzLTlkZjMtMzYzZDk5MGRmNWJhLmU3NjUxNDZmLTg4ZGUtNDQyNS05NGM2LTZjZTQ0ZjA3ZWM5M3gxNzg3ODIzNjUwNzE4MTAzMzE3 parts=1
niks3-go-unit-tests> --- PASS: TestCompleteMultipartUpload_ErrorButObjectExists (1.54s)
niks3-go-unit-tests> === CONT TestGCBugBareHashReferences
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.209212213Z","level":"ERROR","duration":"163.821µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.209267834Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"b9c95f55-cc97-4c5b-9906-b29f458f0374","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket24/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.219005299Z","level":"ERROR","duration":"163.301µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.21906254Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"7d6d1330-ac79-4b77-98d0-b9f40d35a4eb","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket22/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.219470183Z","level":"ERROR","duration":"94.28µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.219505284Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"f9f51f1f-2150-45bb-a95c-a84b49859dfc","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket21/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.227211731Z","level":"ERROR","duration":"175.421µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.227268712Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"530cea42-72c5-41ab-8779-06989bfd8e2c","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket26/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> 2026-08-27 09:40:51.238 UTC [641] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.238 UTC [641] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026-08-27 09:40:51.240 UTC [643] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.240 UTC [643] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.239149816Z","level":"ERROR","duration":"160.461µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.239196617Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"36adc29f-be63-4b01-a979-f65a85df892f","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket27/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> 2026-08-27 09:40:51.240 UTC [642] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.240 UTC [642] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (22.02ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.274948631Z","level":"ERROR","duration":"168.161µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.275006312Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"9cb9ebb0-3728-4fea-bd40-2e148c7b8a9d","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket18/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (4.05ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.279023287Z","level":"ERROR","duration":"151.021µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.279077227Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"11e2fd10-8515-44d0-87f6-5555d6175b27","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket21/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (4.54ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (24.13ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.287197259Z","level":"ERROR","duration":"217.402µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> 2026-08-27 09:40:51.288 UTC [644] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.288 UTC [644] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.287252699Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"b6178ffa-bea7-43bd-9462-23d1ce408a92","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket30/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (26.23ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (9.48ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (1.75ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (4.4ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (11.85ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (8.24ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.29984945Z","level":"ERROR","duration":"321.263µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(317)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.29991387Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"4f958fa1-00ec-464b-b508-7b476cd4a039","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket23/","status_code":503,"duration_ms":48,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(317)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (5.04ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.305326438Z","level":"ERROR","duration":"189.522µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.305383379Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"1d2bad79-4b17-4584-a5ed-61a739affe7e","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket20/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.306814031Z","level":"ERROR","duration":"1.18455ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.306867852Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"4155853d-5b37-4a08-ae65-855a8f7428ba","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket31/","status_code":503,"duration_ms":1,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (12.44ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.310983527Z","level":"ERROR","duration":"153.861µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.311024248Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"8c69bb10-2ba7-4043-9421-66c0d1edecc3","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket20/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (14.08ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (19.48ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (2.62ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (6.03ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (2.44ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (945.95µs)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.322909493Z","level":"ERROR","duration":"166.322µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.322956633Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"1cd2bddb-2556-47a3-bd40-e5facad3bd16","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket26/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.325498855Z","level":"ERROR","duration":"2.37242ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.325550776Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"e2d86824-9d25-4779-a5fa-3feeedbd19c5","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket32/","status_code":503,"duration_ms":2,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (17.46ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (17.84ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (6.41ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (4.89ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (2.98ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.340636848Z","level":"ERROR","duration":"569.965µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.340697049Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"f11554b2-ab7b-4d20-a558-1cc6989cdbec","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket33/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (1.4ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.345501151Z","level":"ERROR","duration":"278.182µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.345549051Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"ffbfc54b-b3da-47da-9ad7-c6106dab92d7","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket34/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.35102468Z","level":"ERROR","duration":"159.642µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.3510727Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"2c6a1baa-6acf-4a65-880d-48a6b72de2eb","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket18/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.40001601Z","level":"ERROR","duration":"180.702µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.400209912Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"f9bff843-3a25-4177-acfd-d760bd8df534","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket33/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.400495054Z","level":"ERROR","duration":"87.361µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.400516014Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"597fe6e0-5f38-41a8-8ca1-ac0e4670d530","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket32/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.400613175Z","level":"ERROR","duration":"36.18µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.400625695Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"47dff72c-db6a-4485-8c9d-10df885b381b","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket34/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.433982689Z","level":"ERROR","duration":"285.783µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.434044009Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"64873bb7-9f5e-46ea-9bd6-d2a9bce47c5f","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket20/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.441074971Z","level":"ERROR","duration":"161.741µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.441133311Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"c75b49b6-0a0f-4b0d-842d-6d2c9136a56f","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket17/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.465206803Z","level":"ERROR","duration":"179.641µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.465312264Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"6350ac52-06d6-42f0-9d67-931c45718378","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket24/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.46600661Z","level":"ERROR","duration":"281.362µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.466043431Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"8de117a3-4901-4312-9938-83a0f1eb5a7d","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket29/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.487206376Z","level":"ERROR","duration":"162.781µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.487265997Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"79821eae-7e41-4756-ad8a-6dd915d9c913","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket31/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.496157135Z","level":"ERROR","duration":"158.961µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.496205776Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"9ea88cfc-c557-43f5-8550-1834285021ae","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket27/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.505566998Z","level":"ERROR","duration":"121.241µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.505601498Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"cebbcf97-8b24-420c-8eb8-4c528dc4eca5","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket32/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.519593461Z","level":"ERROR","duration":"186.922µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.519646902Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"21e1955b-2c61-4aef-8f0c-847d27c1cdb5","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket33/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> --- PASS: TestReadProxyDisabled (1.87s)
niks3-go-unit-tests> === CONT TestPinProtectsFromGC
niks3-go-unit-tests> --- PASS: TestReadProxyInvalidPath (1.88s)
niks3-go-unit-tests> === CONT TestClientWithDependencies
niks3-go-unit-tests> --- PASS: TestService_Rustfstest (1.91s)
niks3-go-unit-tests> === CONT TestClientMultipleUploads
niks3-go-unit-tests> --- PASS: TestReadProxy404 (0.99s)
niks3-go-unit-tests> === CONT TestResurrectedObjectNotDeleted
niks3-go-unit-tests> --- PASS: TestReadProxyRootRedirectsToIndexHTML (1.93s)
niks3-go-unit-tests> === CONT TestCacheConfigHandler
niks3-go-unit-tests> === RUN TestCacheConfigHandler/full_config,_no_issuer
niks3-go-unit-tests> === PAUSE TestCacheConfigHandler/full_config,_no_issuer
niks3-go-unit-tests> === RUN TestCacheConfigHandler/no_cache_url_configured
niks3-go-unit-tests> === PAUSE TestCacheConfigHandler/no_cache_url_configured
niks3-go-unit-tests> === RUN TestCacheConfigHandler/no_signing_keys
niks3-go-unit-tests> === PAUSE TestCacheConfigHandler/no_signing_keys
niks3-go-unit-tests> === RUN TestCacheConfigHandler/issuer_requested_but_no_OIDC_validator
niks3-go-unit-tests> === PAUSE TestCacheConfigHandler/issuer_requested_but_no_OIDC_validator
niks3-go-unit-tests> === CONT TestClientErrorHandling
niks3-go-unit-tests> === RUN TestClientErrorHandling/InvalidStorePath
niks3-go-unit-tests> === PAUSE TestClientErrorHandling/InvalidStorePath
niks3-go-unit-tests> === RUN TestClientErrorHandling/InvalidAuthToken
niks3-go-unit-tests> === PAUSE TestClientErrorHandling/InvalidAuthToken
niks3-go-unit-tests> === RUN TestClientErrorHandling/ServerNotAvailable
niks3-go-unit-tests> === PAUSE TestClientErrorHandling/ServerNotAvailable
niks3-go-unit-tests> === CONT TestClientCADerivations
niks3-go-unit-tests> 2026-08-27 09:40:51.628 UTC [655] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.628 UTC [655] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Received cleanup request method=DELETE path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (16.71ms)
niks3-go-unit-tests> --- PASS: TestReadRedirectNar (2.00s)
niks3-go-unit-tests> === CONT TestCacheStatsHandler
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (11.13ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (7.44ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (5.4ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026-08-27 09:40:51.685 UTC [660] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.685 UTC [660] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (6.29ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (23.96ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:51.726 UTC [661] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.726 UTC [661] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (20.32ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (4.39ms)
niks3-go-unit-tests> 2026-08-27 09:40:51.737 UTC [662] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.737 UTC [662] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (10.02ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Aborted multipart uploads count=1
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (11.12ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (2.93ms)
niks3-go-unit-tests> 2026-08-27 09:40:51.763 UTC [663] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.763 UTC [663] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> --- PASS: TestMultipartCleanup (2.10s)
niks3-go-unit-tests> === CONT TestService_ReadAuthMiddleware
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (5ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:51.767 UTC [664] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.767 UTC [664] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.773527873Z","level":"ERROR","duration":"149.541µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.773587734Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"030d2347-a811-448d-8f3c-0b58cf88383b","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket18/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (34.56ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (9.66ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (13.06ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (2.31ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (10.12ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (11.97ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (8.98ms)
niks3-go-unit-tests> --- PASS: TestReadProxyNarinfoAlreadyDecompressed (0.69s)
niks3-go-unit-tests> === CONT TestService_AuthMiddleware_OIDC
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (8.99ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO OIDC provider initialized name=test
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (10.81ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (24.7ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (26.07ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (7.15ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (3.16ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (17.11ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (11.1ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (19.69ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (16.79ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (17.11ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (5.44ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (12.56ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (9.98ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (16.25ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 1_commit_pending_closure.sql (22.96ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 2_object_stats_trigger.sql (1.66ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Created nix-cache-info in bucket bucket=bucket36
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.885602258Z","level":"ERROR","duration":"696.226µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:51.885668698Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"4e3297e6-a6ef-423f-8c90-ad2f3a3b2b83","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket40/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(362)"}
niks3-go-unit-tests> 2026-08-27 09:40:51.906 UTC [672] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.906 UTC [672] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:51 INFO Created nix-cache-info in bucket bucket=bucket38
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20241026095416_initial_model.sql (12.21ms)
niks3-go-unit-tests> 2026-08-27 09:40:51.954 UTC [692] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:51.954 UTC [692] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> --- PASS: TestMetricsInventory (2.16s)
niks3-go-unit-tests> === CONT TestService_AuthMiddleware_MTLSBoundSubjects
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251210153512_drop_unused_gin_index.sql (5.78ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20251218171726_add_pins.sql (11.26ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 OK 20260628120000_add_object_size_and_stats.sql (12.84ms)
niks3-go-unit-tests> 2026/08/27 09:40:51 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> --- PASS: TestObjectStatsTrigger (2.32s)
niks3-go-unit-tests> === CONT TestOrphanedObjectsGCStressTest
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20241026095416_initial_model.sql (59.71ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (47.6ms)
niks3-go-unit-tests> --- PASS: TestReadProxyNarStreaming (1.43s)
niks3-go-unit-tests> === CONT TestService_AuthMiddleware_MTLSProxyHeader
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.044191352Z","level":"ERROR","duration":"396.104µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (12.21ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.044381194Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"ca81b7c0-cc1c-4d55-b38a-cb19e33ffeac","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket32/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(294)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251210153512_drop_unused_gin_index.sql (18.31ms)
niks3-go-unit-tests> --- PASS: TestCacheStatsHandler (0.39s)
niks3-go-unit-tests> === CONT TestOrphanedObjectsGC
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.04973376Z","level":"ERROR","duration":"2.404321ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(317)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.049799321Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"905d9fdd-709a-4d6c-b174-38cd9a7cd45e","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket41/","status_code":503,"duration_ms":2,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(317)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251218171726_add_pins.sql (6.93ms)
niks3-go-unit-tests> 2026-08-27 09:40:52.058 UTC [748] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:52.058 UTC [748] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> --- PASS: TestResurrectedObjectNotDeleted (0.48s)
niks3-go-unit-tests> === CONT TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_nix-cache-info
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/
niks3-go-unit-tests> === CONT TestUploadHandlersRejectInvalidKeys/request_more_parts_rejects_non-NAR_key
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received request for more parts method=POST path=/
niks3-go-unit-tests> === CONT TestUploadHandlersRejectInvalidKeys/complete_multipart_rejects_non-NAR_key
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received complete multipart upload request method=POST path=/
niks3-go-unit-tests> === CONT TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_path_traversal
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectInvalidKeys (0.00s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_nix-cache-info (0.00s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectInvalidKeys/request_more_parts_rejects_non-NAR_key (0.00s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectInvalidKeys/complete_multipart_rejects_non-NAR_key (0.00s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectInvalidKeys/create_pending_closure_rejects_path_traversal (0.00s)
niks3-go-unit-tests> === CONT TestIsValidUploadKey/narinfo
niks3-go-unit-tests> === CONT TestIsValidUploadKey/unknown_type
niks3-go-unit-tests> === CONT TestIsValidUploadKey/empty_key
niks3-go-unit-tests> === CONT TestIsValidUploadKey/absolute
niks3-go-unit-tests> === CONT TestIsValidUploadKey/traversal_nar
niks3-go-unit-tests> === CONT TestIsValidUploadKey/traversal
niks3-go-unit-tests> === CONT TestIsValidUploadKey/listing_key,_narinfo_type
niks3-go-unit-tests> === CONT TestIsValidUploadKey/nar_key,_narinfo_type
niks3-go-unit-tests> === CONT TestIsValidUploadKey/narinfo_key,_nar_type
niks3-go-unit-tests> === CONT TestIsValidUploadKey/index.html
niks3-go-unit-tests> === CONT TestIsValidUploadKey/nix-cache-info
niks3-go-unit-tests> === CONT TestIsValidUploadKey/realisation_plus_in_output
niks3-go-unit-tests> === CONT TestIsValidUploadKey/realisation
niks3-go-unit-tests> === CONT TestIsValidUploadKey/build_log_equals
niks3-go-unit-tests> === CONT TestIsValidUploadKey/build_log_question_mark
niks3-go-unit-tests> === CONT TestIsValidUploadKey/build_log_plus_in_name
niks3-go-unit-tests> === CONT TestIsValidUploadKey/build_log_home-manager_file
niks3-go-unit-tests> === CONT TestIsValidUploadKey/build_log
niks3-go-unit-tests> === CONT TestIsValidUploadKey/listing
niks3-go-unit-tests> === CONT TestIsValidUploadKey/nar_plain
niks3-go-unit-tests> === CONT TestIsValidUploadKey/nar_xz
niks3-go-unit-tests> === CONT TestIsValidUploadKey/nar_zst
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey (0.05s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/narinfo (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/unknown_type (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/empty_key (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/absolute (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/traversal_nar (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/traversal (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/listing_key,_narinfo_type (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/nar_key,_narinfo_type (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/narinfo_key,_nar_type (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/index.html (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/nix-cache-info (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/realisation_plus_in_output (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/realisation (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/build_log_equals (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/build_log_question_mark (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/build_log_plus_in_name (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/build_log_home-manager_file (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/build_log (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/listing (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/nar_plain (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/nar_xz (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidUploadKey/nar_zst (0.00s)
niks3-go-unit-tests> === CONT TestProxyWriteTimeout/narinfo
niks3-go-unit-tests> === CONT TestProxyWriteTimeout/10_GiB_nar
niks3-go-unit-tests> === CONT TestProxyWriteTimeout/unknown_size
niks3-go-unit-tests> === CONT TestProxyWriteTimeout/1_GiB_nar
niks3-go-unit-tests> --- PASS: TestProxyWriteTimeout (0.00s)
niks3-go-unit-tests> --- PASS: TestProxyWriteTimeout/narinfo (0.00s)
niks3-go-unit-tests> --- PASS: TestProxyWriteTimeout/10_GiB_nar (0.00s)
niks3-go-unit-tests> --- PASS: TestProxyWriteTimeout/unknown_size (0.00s)
niks3-go-unit-tests> --- PASS: TestProxyWriteTimeout/1_GiB_nar (0.00s)
niks3-go-unit-tests> === CONT TestServerTLSConfig/no_client_CA
niks3-go-unit-tests> === CONT TestServerTLSConfig/not_a_PEM_file
niks3-go-unit-tests> === CONT TestServerTLSConfig/missing_CA_file
niks3-go-unit-tests> --- PASS: TestServerTLSConfig (0.00s)
niks3-go-unit-tests> --- PASS: TestServerTLSConfig/no_client_CA (0.00s)
niks3-go-unit-tests> --- PASS: TestServerTLSConfig/not_a_PEM_file (0.00s)
niks3-go-unit-tests> --- PASS: TestServerTLSConfig/missing_CA_file (0.00s)
niks3-go-unit-tests> === CONT TestUploadHandlersRejectOversizedBody/request_more_parts
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received request for more parts method=POST path=/
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Created nix-cache-info in bucket bucket=bucket22
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20260628120000_add_object_size_and_stats.sql (23.09ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (21.76ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> === NAME TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> metadata_upload_test.go:48: First store path: /build/TestNARDeduplicationMetadataUploadBug1342178624/001/store/q0f2ljxgj0lip9awqlzzpckk671321q0-file1.txt
niks3-go-unit-tests> 2026-08-27 09:40:52.130 UTC [769] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:52.130 UTC [769] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (30.98ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20241026095416_initial_model.sql (63.85ms)
niks3-go-unit-tests> 2026-08-27 09:40:52.148 UTC [771] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:52.148 UTC [771] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251210153512_drop_unused_gin_index.sql (23.89ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.183726858Z","level":"ERROR","duration":"164.601µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.183789619Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"e0577fad-9cb0-4b6b-9b49-d55786c920b6","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket33/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20241026095416_initial_model.sql (24.83ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251218171726_add_pins.sql (27.35ms)
niks3-go-unit-tests> --- PASS: TestGCBugBareHashReferences (1.00s)
niks3-go-unit-tests> === CONT TestUploadHandlersRejectOversizedBody/complete_multipart
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received complete multipart upload request method=POST path=/
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251210153512_drop_unused_gin_index.sql (20.46ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20260628120000_add_object_size_and_stats.sql (26.68ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> === CONT TestUploadHandlersRejectOversizedBody/create_pending_closure
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.219518593Z","level":"ERROR","duration":"168.022µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.219567873Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"c7e556aa-01e7-4f4b-bf1b-653d2e21c2db","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket33/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20241026095416_initial_model.sql (30.87ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (11.81ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (3.83ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251210153512_drop_unused_gin_index.sql (13.54ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251218171726_add_pins.sql (26.84ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20260628120000_add_object_size_and_stats.sql (5.03ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (1.86ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.253550432Z","level":"ERROR","duration":"611.145µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.253615992Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"8b18efe3-943a-4c8b-abf3-8d9b27cb3151","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket43/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (10.72ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> 2026-08-27 09:40:52.256 UTC [790] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:52.256 UTC [790] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.259873508Z","level":"ERROR","duration":"39.93961ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.259943888Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"8438f1c9-a1c7-4a81-839c-74ff166b5ddc","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket41/","status_code":503,"duration_ms":40,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.260080709Z","level":"ERROR","duration":"1.086569ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.26014035Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"2165e00a-7340-4dbc-bbbb-3ef3900a5c44","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket44/","status_code":503,"duration_ms":1,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> === CONT TestParseSingleRange/none
niks3-go-unit-tests> === CONT TestParseSingleRange/open-ended
niks3-go-unit-tests> === CONT TestParseSingleRange/start_far_past_EOF
niks3-go-unit-tests> === CONT TestParseSingleRange/start_past_EOF
niks3-go-unit-tests> === CONT TestParseSingleRange/single_byte
niks3-go-unit-tests> === CONT TestParseSingleRange/suffix_exceeds_size
niks3-go-unit-tests> === CONT TestParseSingleRange/suffix
niks3-go-unit-tests> === CONT TestParseSingleRange/end_clamped_to_size
niks3-go-unit-tests> === CONT TestParseSingleRange/malformed_both_empty
niks3-go-unit-tests> === CONT TestParseSingleRange/closed
niks3-go-unit-tests> === CONT TestParseSingleRange/malformed_end_before_start
niks3-go-unit-tests> === CONT TestParseSingleRange/multi-range_ignored
niks3-go-unit-tests> === CONT TestParseSingleRange/malformed_no_dash
niks3-go-unit-tests> === CONT TestParseSingleRange/unknown_unit
niks3-go-unit-tests> --- PASS: TestParseSingleRange (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/none (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/open-ended (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/start_far_past_EOF (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/start_past_EOF (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/single_byte (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/suffix_exceeds_size (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/suffix (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/end_clamped_to_size (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/malformed_both_empty (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/closed (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/malformed_end_before_start (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/multi-range_ignored (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/malformed_no_dash (0.00s)
niks3-go-unit-tests> --- PASS: TestParseSingleRange/unknown_unit (0.00s)
niks3-go-unit-tests> === CONT TestIsValidCachePath/narinfo
niks3-go-unit-tests> === CONT TestIsValidCachePath/ls
niks3-go-unit-tests> === CONT TestIsValidCachePath/index.html
niks3-go-unit-tests> === CONT TestIsValidCachePath/nix-cache-info
niks3-go-unit-tests> === CONT TestIsValidCachePath/realisation
niks3-go-unit-tests> === CONT TestIsValidCachePath/log
niks3-go-unit-tests> === CONT TestIsValidCachePath/nar_xz
niks3-go-unit-tests> === CONT TestIsValidCachePath/nar_uncompressed
niks3-go-unit-tests> === CONT TestIsValidCachePath/nar_zst
niks3-go-unit-tests> === CONT TestIsValidCachePath/empty
niks3-go-unit-tests> === CONT TestIsValidCachePath/short_hash
niks3-go-unit-tests> === CONT TestIsValidCachePath/nar_bz2
niks3-go-unit-tests> === CONT TestIsValidCachePath/wrong_extension
niks3-go-unit-tests> === CONT TestIsValidCachePath/leading_slash
niks3-go-unit-tests> === CONT TestIsValidCachePath/narinfo_all_nix_base32_chars
niks3-go-unit-tests> === CONT TestIsValidCachePath/invalid_char_u
niks3-go-unit-tests> === CONT TestIsValidCachePath/random_path
niks3-go-unit-tests> === CONT TestIsValidCachePath/invalid_char_e
niks3-go-unit-tests> === CONT TestIsValidCachePath/traversal_in_middle
niks3-go-unit-tests> === CONT TestIsValidCachePath/traversal_parent
niks3-go-unit-tests> --- PASS: TestIsValidCachePath (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/narinfo (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/ls (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/index.html (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/nix-cache-info (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/realisation (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/log (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/nar_xz (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/nar_uncompressed (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/nar_zst (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/empty (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/short_hash (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/nar_bz2 (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/wrong_extension (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/leading_slash (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/narinfo_all_nix_base32_chars (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/invalid_char_u (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/random_path (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/invalid_char_e (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/traversal_in_middle (0.00s)
niks3-go-unit-tests> --- PASS: TestIsValidCachePath/traversal_parent (0.00s)
niks3-go-unit-tests> === CONT TestCacheConfigHandler/full_config,_no_issuer
niks3-go-unit-tests> === CONT TestClientErrorHandling/InvalidStorePath
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251218171726_add_pins.sql (30.15ms)
niks3-go-unit-tests> === NAME TestClientWithDependencies
niks3-go-unit-tests> client_integration_test.go:593: Built derivation: /build/TestClientWithDependencies243824826/001/store/wj8nlrx9pjrwh4vy7h3a49r0acf2ipqz-test-script
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20260628120000_add_object_size_and_stats.sql (6.93ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (2.71ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (989.63µs)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.282955231Z","level":"ERROR","duration":"2.996567ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.283035091Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"16cfba12-1532-411e-9c5d-8605b59d2b24","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket45/","status_code":503,"duration_ms":3,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20241026095416_initial_model.sql (13.77ms)
niks3-go-unit-tests> === NAME TestClientCADerivations
niks3-go-unit-tests> client_ca_test.go:136: Built CA derivation: /build/TestClientCADerivations475577378/001/store/yxn455a7s8375rkr5fk3czwhjcxwvm5q-ca-test
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.291134562Z","level":"ERROR","duration":"172.861µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.291192043Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"03deecaa-55ab-4f78-a76f-cc4435ea2d51","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket43/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> === NAME TestClientWithDependencies
niks3-go-unit-tests> client_integration_test.go:595: Found 1 dependencies (including self)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251210153512_drop_unused_gin_index.sql (18.69ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251218171726_add_pins.sql (5.03ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20260628120000_add_object_size_and_stats.sql (4.71ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> === NAME TestClientCADerivations
niks3-go-unit-tests> client_ca_test.go:139: Found 1 dependencies (including self)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (5.81ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (4.55ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.351905437Z","level":"ERROR","duration":"170.841µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.351983137Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"9f7b2d06-3fb3-4998-ad10-23b7fad58122","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket45/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(295)"}
niks3-go-unit-tests> 2026-08-27 09:40:52.363 UTC [881] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:52.363 UTC [881] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.364208325Z","level":"ERROR","duration":"197.522µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.364287205Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"3b19c264-82c7-4556-a808-9e020da02104","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket44/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.364601868Z","level":"ERROR","duration":"966.649µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.364638808Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"fcb85d51-d2a1-4286-90ea-073473781608","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket46/","status_code":503,"duration_ms":1,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 1 paths to 127.0.0.1 (0 already cached)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading q0f2ljxgj0lip9awqlzzpckk671321q0-file1.txt (160B)
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=nar/1byf36hhc5sn8lvwqfkjh3ybgn76slmx8naakslrypxs6mna71rf.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=q0f2ljxgj0lip9awqlzzpckk671321q0.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received sign narinfos request method=POST path=/api/pending_closures/1/sign
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20241026095416_initial_model.sql (17.9ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Signed narinfos id=1 count=1
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 1 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Created nix-cache-info in bucket bucket=bucket40
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251210153512_drop_unused_gin_index.sql (11.13ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 1 paths to 127.0.0.1 (0 already cached)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading wj8nlrx9pjrwh4vy7h3a49r0acf2ipqz-test-script (136B)
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=q0f2ljxgj0lip9awqlzzpckk671321q0.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251218171726_add_pins.sql (9.03ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20260628120000_add_object_size_and_stats.sql (3.89ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=nar/1s7yghixzpinyqm7g59kyn3sav81pmnsdi5v63m6x4r2vacy907j.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Upload complete. (248ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=log/787h52w828nz486846pad865g9mjwli6-test-script.drv error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> === NAME TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> metadata_upload_test.go:54: Retrieved narinfo from S3:
niks3-go-unit-tests> StorePath: /build/TestNARDeduplicationMetadataUploadBug1342178624/001/store/q0f2ljxgj0lip9awqlzzpckk671321q0-file1.txt
niks3-go-unit-tests> URL: nar/1byf36hhc5sn8lvwqfkjh3ybgn76slmx8naakslrypxs6mna71rf.nar.zst
niks3-go-unit-tests> Compression: zstd
niks3-go-unit-tests> NarHash: sha256:1byf36hhc5sn8lvwqfkjh3ybgn76slmx8naakslrypxs6mna71rf
niks3-go-unit-tests> NarSize: 160
niks3-go-unit-tests> References:
niks3-go-unit-tests> CA: fixed:r:sha256:1byf36hhc5sn8lvwqfkjh3ybgn76slmx8naakslrypxs6mna71rf
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=wj8nlrx9pjrwh4vy7h3a49r0acf2ipqz.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received sign narinfos request method=POST path=/api/pending_closures/1/sign
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Signed narinfos id=1 count=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 1 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (5.9ms)
niks3-go-unit-tests> metadata_upload_test.go:55: Retrieved .ls file from S3 (compressed size: 77 bytes)
niks3-go-unit-tests> metadata_upload_test.go:55: Decompressed .ls content (64 bytes):
niks3-go-unit-tests> {"version":1,"root":{"type":"regular","size":44,"narOffset":96}}
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=wj8nlrx9pjrwh4vy7h3a49r0acf2ipqz.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (11.94ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Upload complete. (84ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.452094657Z","level":"ERROR","duration":"4.413279ms","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.452158118Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"7d1e4c6c-daa5-4c1f-ab40-4a43b50f5c35","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket47/","status_code":503,"duration_ms":4,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> === NAME TestClientWithDependencies
niks3-go-unit-tests> client_integration_test.go:597: Skipping nix copy test - isolated store (/build/TestClientWithDependencies243824826/001/store) requires matching store prefix
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.47515392Z","level":"ERROR","duration":"170.402µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.47521136Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"3301d74b-4f08-431b-a951-4c153732492f","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket45/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> --- PASS: TestClientWithDependencies (0.93s)
niks3-go-unit-tests> === CONT TestCacheConfigHandler/issuer_requested_but_no_OIDC_validator
niks3-go-unit-tests> === CONT TestCacheConfigHandler/no_signing_keys
niks3-go-unit-tests> === CONT TestCacheConfigHandler/no_cache_url_configured
niks3-go-unit-tests> --- PASS: TestCacheConfigHandler (0.00s)
niks3-go-unit-tests> --- PASS: TestCacheConfigHandler/full_config,_no_issuer (0.00s)
niks3-go-unit-tests> --- PASS: TestCacheConfigHandler/issuer_requested_but_no_OIDC_validator (0.00s)
niks3-go-unit-tests> --- PASS: TestCacheConfigHandler/no_signing_keys (0.00s)
niks3-go-unit-tests> --- PASS: TestCacheConfigHandler/no_cache_url_configured (0.00s)
niks3-go-unit-tests> === CONT TestClientErrorHandling/ServerNotAvailable
niks3-go-unit-tests> === NAME TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> metadata_upload_test.go:64: Second store path (same content): /build/TestNARDeduplicationMetadataUploadBug1342178624/001/store/kssy9b2bjhjbl18vjhjlqhkx8wh2qgas-file2.txt
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.490635716Z","level":"ERROR","duration":"219.402µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.490691636Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"3cedd56d-f750-4fbb-aa25-79c936508abe","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket46/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.51384158Z","level":"ERROR","duration":"177.702µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.51389784Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"cb604580-1747-4298-afbe-7a40acbacf0f","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket41/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.535808113Z","level":"ERROR","duration":"160.882µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.535867273Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"17e88a25-c33e-442a-a7cb-79bfaa06e4b3","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket44/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(382)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.562985472Z","level":"ERROR","duration":"189.282µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.563054952Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"00ca04c0-98b3-4c6b-b10c-8070ad43eb02","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket45/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(378)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received complete multipart upload request method=POST path=/api/multipart/complete
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 1 paths to 127.0.0.1 (0 already cached)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading yxn455a7s8375rkr5fk3czwhjcxwvm5q-ca-test (144B)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.598266542Z","level":"ERROR","duration":"185.182µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.598325642Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"5962e926-4d56-471e-993c-a4454b5da61c","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket43/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=log/bzfsyqdn2jq4s2a6ni482j27jlbp9bvm-ca-test.drv error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=nar/04jj7iiy79vhzp5kk3r2751n9x3xa44j98y5bk1ds4jp31kky74n.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.605115062Z","level":"ERROR","duration":"135.761µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.605161942Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"34c97381-b86a-4857-a958-5eb0dbbc0e3b","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket47/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(381)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=yxn455a7s8375rkr5fk3czwhjcxwvm5q.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received sign narinfos request method=POST path=/api/pending_closures/1/sign
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Signed narinfos id=1 count=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 1 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=yxn455a7s8375rkr5fk3czwhjcxwvm5q.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Upload complete. (241ms)
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.627547239Z","level":"ERROR","duration":"111.561µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.62759792Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"6ee0e598-beb7-46c6-bccd-1578f4883fbb","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket41/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(201)"}
niks3-go-unit-tests> === NAME TestClientCADerivations
niks3-go-unit-tests> client_ca_test.go:180: Narinfo contains CA field: StorePath: /build/TestClientCADerivations475577378/001/store/yxn455a7s8375rkr5fk3czwhjcxwvm5q-ca-test
niks3-go-unit-tests> URL: nar/04jj7iiy79vhzp5kk3r2751n9x3xa44j98y5bk1ds4jp31kky74n.nar.zst
niks3-go-unit-tests> Compression: zstd
niks3-go-unit-tests> NarHash: sha256:04jj7iiy79vhzp5kk3r2751n9x3xa44j98y5bk1ds4jp31kky74n
niks3-go-unit-tests> NarSize: 144
niks3-go-unit-tests> References:
niks3-go-unit-tests> Deriver: /build/TestClientCADerivations475577378/001/store/bzfsyqdn2jq4s2a6ni482j27jlbp9bvm-ca-test.drv
niks3-go-unit-tests> CA: fixed:r:sha256:04jj7iiy79vhzp5kk3r2751n9x3xa44j98y5bk1ds4jp31kky74n
niks3-go-unit-tests> client_ca_test.go:185: Checking for realisation files in S3...
niks3-go-unit-tests> client_ca_test.go:207: No realisation files uploaded - this is expected for locally built CA derivations
niks3-go-unit-tests> client_ca_test.go:208: Locally built CA derivations don't have DrvOutput IDs until they're substituted from a cache
niks3-go-unit-tests> === NAME TestClientMultipleUploads
niks3-go-unit-tests> client_integration_test.go:338: Created store path 0: /build/TestClientMultipleUploads1985007940/001/store/8mli2k3jryn1a73bd7vr130myawnq1sf-test-file-0.txt
niks3-go-unit-tests> client_integration_test.go:338: Created store path 1: /build/TestClientMultipleUploads1985007940/001/store/piw0lngmvrp5ydnmiw8vjqph4zxc7g40-test-file-1.txt
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.749120308Z","level":"ERROR","duration":"316.543µs","resp":"Response { status: 503, version: HTTP/1.1, headers: {\"content-type\": \"application/xml\"}, body: Body { once: b\"SlowDownbucket creation concurrency limit reached; retry later\" } }","target":"s3s::service","filename":"/build/rustfs-1.0.0-beta.12-vendor/source-git-1/s3s-0.14.1/src/service.rs","line_number":640,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> {"timestamp":"2026-08-27T09:40:52.749178108Z","level":"ERROR","message":"HTTP request completed","event":"http_request_completed","component":"server","subsystem":"http","request_id":"14ffb250-d3d6-4d5a-91f1-228d0c5272c1","trace_id":"unknown","span_id":"unknown","peer_addr":"127.0.0.1","method":"PUT","uri":"/bucket47/","status_code":503,"duration_ms":0,"result":"server_error","target":"rustfs::server::layer","filename":"rustfs/src/server/layer.rs","line_number":392,"threadName":"rustfs-worker","threadId":"ThreadId(383)"}
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 0 paths to 127.0.0.1 (1 already cached)
niks3-go-unit-tests> client_integration_test.go:338: Created store path 2: /build/TestClientMultipleUploads1985007940/001/store/kim9b9kkbfqchfdjwfsxr05jah23rp3w-test-file-2.txt
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Request failed, retrying attempt=1 max_attempts=6 backoff=100ms error="Get \"http://localhost:19999/api/cache-config\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/cache-config
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=kssy9b2bjhjbl18vjhjlqhkx8wh2qgas.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received sign narinfos request method=POST path=/api/pending_closures/2/sign
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Signed narinfos id=2 count=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 1 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=kssy9b2bjhjbl18vjhjlqhkx8wh2qgas.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received complete upload request method=POST path=/api/pending_closures/2/complete
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Completed upload id=2
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Upload complete. (110ms)
niks3-go-unit-tests> === NAME TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> metadata_upload_test.go:76: Retrieved narinfo from S3:
niks3-go-unit-tests> StorePath: /build/TestNARDeduplicationMetadataUploadBug1342178624/001/store/kssy9b2bjhjbl18vjhjlqhkx8wh2qgas-file2.txt
niks3-go-unit-tests> URL: nar/1byf36hhc5sn8lvwqfkjh3ybgn76slmx8naakslrypxs6mna71rf.nar.zst
niks3-go-unit-tests> Compression: zstd
niks3-go-unit-tests> NarHash: sha256:1byf36hhc5sn8lvwqfkjh3ybgn76slmx8naakslrypxs6mna71rf
niks3-go-unit-tests> NarSize: 160
niks3-go-unit-tests> References:
niks3-go-unit-tests> CA: fixed:r:sha256:1byf36hhc5sn8lvwqfkjh3ybgn76slmx8naakslrypxs6mna71rf
niks3-go-unit-tests> === NAME TestClientCADerivations
niks3-go-unit-tests> client_ca_test.go:258: nix copy output: warning: you don't have Internet access; disabling some network-dependent features
niks3-go-unit-tests> warning: failed to create TLS context for AWS credential providers; SSO, STS WebIdentity, and ECS container authentication will be unavailable
niks3-go-unit-tests> error: binary cache 's3://bucket38?endpoint=http://localhost:41273®ion=eu-west-1' is for Nix stores with prefix '/nix/store', not '/build/TestClientCADerivations475577378/001/store'
niks3-go-unit-tests> client_ca_test.go:259: nix copy failed (might be expected with isolated stores): exit status 1
niks3-go-unit-tests> --- PASS: TestClientCADerivations (1.18s)
niks3-go-unit-tests> === CONT TestClientErrorHandling/InvalidAuthToken
niks3-go-unit-tests> === NAME TestNARDeduplicationMetadataUploadBug
niks3-go-unit-tests> metadata_upload_test.go:77: Retrieved .ls file from S3 (compressed size: 62 bytes)
niks3-go-unit-tests> metadata_upload_test.go:77: Decompressed .ls content (49 bytes):
niks3-go-unit-tests> {"version":1,"root":{"type":"regular","size":44}}
niks3-go-unit-tests> --- PASS: TestNARDeduplicationMetadataUploadBug (2.61s)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Created nix-cache-info in bucket bucket=bucket35
niks3-go-unit-tests> --- PASS: TestReadProxyRangeRequest (3.15s)
niks3-go-unit-tests> --- PASS: TestReadProxyNarinfo (2.26s)
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Request failed, retrying attempt=2 max_attempts=6 backoff=183.506671ms error="Get \"http://localhost:19999/api/cache-config\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/cache-config
niks3-go-unit-tests> 2026-08-27 09:40:52.870 UTC [1303] ERROR: relation "goose_db_version" does not exist at character 36
niks3-go-unit-tests> 2026-08-27 09:40:52.870 UTC [1303] STATEMENT: SELECT version_id, is_applied from goose_db_version ORDER BY id DESC
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> === NAME TestPinProtectsFromGC
niks3-go-unit-tests> client_integration_test.go:646: Pinned store path: /build/TestPinProtectsFromGC2096547767/001/store/pzcc0ag1hw3zjkb2lnfy9ql8gacgvmyw-pinned-file.txt
niks3-go-unit-tests> client_integration_test.go:647: Unpinned store path: /build/TestPinProtectsFromGC2096547767/001/store/mfq10dhg7afdzwjlnq5g8iy01d7g13m2-unpinned-file.txt
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20241026095416_initial_model.sql (16.99ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251210153512_drop_unused_gin_index.sql (5.99ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20251218171726_add_pins.sql (14.27ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 3 paths to 127.0.0.1 (0 already cached)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 8mli2k3jryn1a73bd7vr130myawnq1sf-test-file-0.txt (160B)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading piw0lngmvrp5ydnmiw8vjqph4zxc7g40-test-file-1.txt (160B)
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading kim9b9kkbfqchfdjwfsxr05jah23rp3w-test-file-2.txt (160B)
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 20260628120000_add_object_size_and_stats.sql (8.32ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: successfully migrated database to version: 20260628120000
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=nar/0ahq3izw3h0b0c08p3xdfclh758fwxnp85ccvflasb4vnfsv50ri.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 1_commit_pending_closure.sql (8.09ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=nar/1823g6vx4q5zqvr73m7lkq1wpk40fin7bsc792di430yk7sg4lka.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 OK 2_object_stats_trigger.sql (2.33ms)
niks3-go-unit-tests> 2026/08/27 09:40:52 goose: up to current file version: 2
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=kim9b9kkbfqchfdjwfsxr05jah23rp3w.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=piw0lngmvrp5ydnmiw8vjqph4zxc7g40.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=nar/13p9pqi0ga6fx2apcwls9hjnv7nmf740ggpn5zvfzdsp5vz2bbg4.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> --- PASS: TestReadProxyHead (3.29s)
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=8mli2k3jryn1a73bd7vr130myawnq1sf.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received sign narinfos request method=POST path=/api/pending_closures/1/sign
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Signed narinfos id=1 count=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received sign narinfos request method=POST path=/api/pending_closures/2/sign
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Signed narinfos id=2 count=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received sign narinfos request method=POST path=/api/pending_closures/3/sign
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Signed narinfos id=3 count=1
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Uploading 3 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Aborted multipart uploads count=0
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Force mode enabled - objects will be deleted immediately without grace period
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=piw0lngmvrp5ydnmiw8vjqph4zxc7g40.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Garbage collection completed failed-uploads-deleted=0 old-closures-deleted=0 objects-marked-for-deletion=0 objects-deleted-after-grace-period=0 objects-failed-to-delete=0
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to register uploaded object key=8mli2k3jryn1a73bd7vr130myawnq1sf.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Vacuumed table table=pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:52 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Vacuumed table table=pending_objects
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Vacuumed table table=multipart_uploads
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Vacuumed table table=closures
niks3-go-unit-tests> 2026/08/27 09:40:52 INFO Vacuumed table table=objects
niks3-go-unit-tests> --- PASS: TestGCMetrics (1.87s)
niks3-go-unit-tests> --- PASS: TestService_healthCheckHandler (2.88s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectOversizedBody (0.20s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectOversizedBody/request_more_parts (0.15s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectOversizedBody/complete_multipart (0.06s)
niks3-go-unit-tests> --- PASS: TestUploadHandlersRejectOversizedBody/create_pending_closure (0.91s)
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Request failed, retrying attempt=3 max_attempts=6 backoff=439.881975ms error="Get \"http://localhost:19999/api/cache-config\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/cache-config
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=kim9b9kkbfqchfdjwfsxr05jah23rp3w.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> === RUN TestService_AuthMiddleware_OIDC/valid_OIDC_token
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware_OIDC/valid_OIDC_token
niks3-go-unit-tests> === RUN TestService_AuthMiddleware_OIDC/OIDC_token_with_wrong_org_rejected
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware_OIDC/OIDC_token_with_wrong_org_rejected
niks3-go-unit-tests> === RUN TestService_AuthMiddleware_OIDC/malformed_token_rejected
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware_OIDC/malformed_token_rejected
niks3-go-unit-tests> === RUN TestService_AuthMiddleware_OIDC/static_token_still_works_with_OIDC_configured
niks3-go-unit-tests> === PAUSE TestService_AuthMiddleware_OIDC/static_token_still_works_with_OIDC_configured
niks3-go-unit-tests> === CONT TestService_AuthMiddleware_OIDC/valid_OIDC_token
niks3-go-unit-tests> === CONT TestService_AuthMiddleware_OIDC/malformed_token_rejected
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Authentication failed token_preview=not-a-valid-jwt token_length=15 oidc_error="no provider could verify the token (signature or issuer mismatch)" oidc_provider="" tried_providers=[test]
niks3-go-unit-tests> === CONT TestService_AuthMiddleware_OIDC/static_token_still_works_with_OIDC_configured
niks3-go-unit-tests> === CONT TestService_AuthMiddleware_OIDC/OIDC_token_with_wrong_org_rejected
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete multipart upload request method=POST path=/api/multipart/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO OIDC auth successful provider=test
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Authentication failed token_preview=eyJhbGciOi...5FuA32kE6A token_length=702 oidc_error="bound claims validation failed: claim \"repository_owner\" value [otherorg] not in allowed patterns [myorg]" oidc_provider=test tried_providers=[test]
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware_OIDC (1.33s)
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware_OIDC/malformed_token_rejected (0.00s)
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware_OIDC/static_token_still_works_with_OIDC_configured (0.00s)
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware_OIDC/valid_OIDC_token (0.00s)
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware_OIDC/OIDC_token_with_wrong_org_rejected (0.00s)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/2/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=2
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/3/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading 1 paths to 127.0.0.1 (0 already cached)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading pzcc0ag1hw3zjkb2lnfy9ql8gacgvmyw-pinned-file.txt (128B)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=3
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Upload complete. (353ms)
niks3-go-unit-tests> === NAME TestClientMultipleUploads
niks3-go-unit-tests> client_integration_test.go:349: Uploaded 3 paths in 389.537624ms
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=nar/0qmhsg42pqsz7x6hh02j8gznnac3yi3qpjhrqbwvz88i194jbb5s.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=pzcc0ag1hw3zjkb2lnfy9ql8gacgvmyw.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received sign narinfos request method=POST path=/api/pending_closures/1/sign
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Signed narinfos id=1 count=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading 1 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=pzcc0ag1hw3zjkb2lnfy9ql8gacgvmyw.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN mTLS auth: subject not in bound subjects subject="CN=untrusted,O=Other"
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN mTLS auth: bound subjects configured but subject DN unavailable
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN mTLS auth: subject not in bound subjects subject="CN=untrusted"
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware_MTLSBoundSubjects (1.22s)
niks3-go-unit-tests> --- PASS: TestClientMultipleUploads (1.61s)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Upload complete. (263ms)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Created nix-cache-info in bucket bucket=bucket33
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Authentication failed token_preview=invalid-token token_length=13 reason="static API token mismatch"
niks3-go-unit-tests> === NAME TestClientIntegration
niks3-go-unit-tests> client_integration_test.go:276: Created store path: /build/TestClientIntegration3132272499/002/store/07z9lrkx6ij1vnk3d4ya6v3cykk66skl-test-file.txt
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed multipart upload object_key=nar/gggggggggggggggggggggggggggggg0100000000000000000000.nar.zst upload_id=OGQ1OWJkYzQtM2VkMy00MjMzLTlkZjMtMzYzZDk5MGRmNWJhLmVkNzdjZmY2LTU0Y2MtNDM4Yi1hYWIwLWZjYzcxNjFhNTU1OHgxNzg3ODIzNjUwNjcyMDk5NTEz parts=12
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> --- PASS: TestRedundantMultipartUpload (3.67s)
niks3-go-unit-tests> --- PASS: TestService_AuthMiddleware_MTLSProxyHeader (1.26s)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading 1 paths to 127.0.0.1 (0 already cached)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading mfq10dhg7afdzwjlnq5g8iy01d7g13m2-unpinned-file.txt (128B)
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=nar/0gh0wdnr6gmk4r5sfzzh12isnl14rgmkrwy1ws41hpsrlndclg5h.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=mfq10dhg7afdzwjlnq5g8iy01d7g13m2.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received sign narinfos request method=POST path=/api/pending_closures/2/sign
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Signed narinfos id=2 count=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading 1 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=mfq10dhg7afdzwjlnq5g8iy01d7g13m2.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/2/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=2
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Upload complete. (149ms)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading 1 paths to 127.0.0.1 (0 already cached)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading 07z9lrkx6ij1vnk3d4ya6v3cykk66skl-test-file.txt (152B)
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=nar/11l1b7hsy9g9pz8i2rcn4n128l6pyr2yf58d49r12hr5caw9dzk1.nar.zst error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received create pin request method=POST path=/api/pins/myapp
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=07z9lrkx6ij1vnk3d4ya6v3cykk66skl.ls error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received sign narinfos request method=POST path=/api/pending_closures/1/sign
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Signed narinfos id=1 count=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Uploading 1 narinfos
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Failed to register uploaded object key=07z9lrkx6ij1vnk3d4ya6v3cykk66skl.narinfo error="server returned 404: 404 page not found\n"
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN mTLS auth: subject not in bound subjects subject="CN=writer"
niks3-go-unit-tests> --- PASS: TestService_ReadAuthMiddleware (1.67s)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Created/updated pin name=myapp store_path=/build/TestPinProtectsFromGC2096547767/001/store/pzcc0ag1hw3zjkb2lnfy9ql8gacgvmyw-pinned-file.txt narinfo_key=pzcc0ag1hw3zjkb2lnfy9ql8gacgvmyw.narinfo
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Upload complete. (139ms)
niks3-go-unit-tests> === NAME TestClientIntegration
niks3-go-unit-tests> client_integration_test.go:292: Retrieved narinfo from S3:
niks3-go-unit-tests> StorePath: /build/TestClientIntegration3132272499/002/store/07z9lrkx6ij1vnk3d4ya6v3cykk66skl-test-file.txt
niks3-go-unit-tests> URL: nar/11l1b7hsy9g9pz8i2rcn4n128l6pyr2yf58d49r12hr5caw9dzk1.nar.zst
niks3-go-unit-tests> Compression: zstd
niks3-go-unit-tests> NarHash: sha256:11l1b7hsy9g9pz8i2rcn4n128l6pyr2yf58d49r12hr5caw9dzk1
niks3-go-unit-tests> NarSize: 152
niks3-go-unit-tests> References:
niks3-go-unit-tests> CA: fixed:r:sha256:11l1b7hsy9g9pz8i2rcn4n128l6pyr2yf58d49r12hr5caw9dzk1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Starting cleanup of old closures method=DELETE path=/api/closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Garbage collection started
niks3-go-unit-tests> client_integration_test.go:293: Retrieved .ls file from S3 (compressed size: 77 bytes)
niks3-go-unit-tests> client_integration_test.go:293: Decompressed .ls content (64 bytes):
niks3-go-unit-tests> {"version":1,"root":{"type":"regular","size":39,"narOffset":96}}
niks3-go-unit-tests> client_integration_test.go:296: Testing garbage collection...
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Aborted multipart uploads count=0
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Force mode enabled - objects will be deleted immediately without grace period
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Starting cleanup of old closures method=DELETE path=/api/closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Garbage collection started
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Aborted multipart uploads count=0
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Force mode enabled - objects will be deleted immediately without grace period
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Request failed, retrying attempt=4 max_attempts=6 backoff=843.704188ms error="Get \"http://localhost:19999/api/cache-config\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/cache-config
niks3-go-unit-tests> === NAME TestOrphanedObjectsGC
niks3-go-unit-tests> orphaned_objects_gc_test.go:290: GC Test Summary:
niks3-go-unit-tests> orphaned_objects_gc_test.go:291: - Kept: 2 objects from closure A
niks3-go-unit-tests> orphaned_objects_gc_test.go:292: - Deleted: 2 objects from closure B
niks3-go-unit-tests> orphaned_objects_gc_test.go:293: - Deleted: 6 orphaned chain objects (X1->X2->X3)
niks3-go-unit-tests> orphaned_objects_gc_test.go:294: - Deleted: 2 orphaned single objects (Y)
niks3-go-unit-tests> orphaned_objects_gc_test.go:295: - Total deleted: 10 objects
niks3-go-unit-tests> --- PASS: TestOrphanedObjectsGC (1.58s)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete multipart upload request method=POST path=/api/multipart/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete multipart upload request method=POST path=/api/multipart/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed multipart upload object_key=nar/dadb44fdadb44fdadb44fdadb44f000000000000000000000000.nar.zst upload_id=OGQ1OWJkYzQtM2VkMy00MjMzLTlkZjMtMzYzZDk5MGRmNWJhLjdlZTg1NzU5LTM0OTItNDU0ZC1hNTVkLTQxODBlNzkzYzNkY3gxNzg3ODIzNjUxODQxNjg2MzMy parts=10
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed multipart upload object_key=nar/0000000000000000000000000000000000000000000000000000.nar.zst upload_id=OGQ1OWJkYzQtM2VkMy00MjMzLTlkZjMtMzYzZDk5MGRmNWJhLjliMWE0NzkxLTlkMDgtNGQ3Ni04NjA3LTJjYzhjZDJlNWRmMHgxNzg3ODIzNjUyMDkzMDU1MDIx parts=10
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received complete upload request method=POST path=/api/pending_closures/1/complete
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Completed upload id=1
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received get closure request method=GET path=/api/closures/00000000000000000000000000000000
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Object in database but missing from S3 key=dadb44fdadb44fdadb44fdadb44f0000.narinfo
niks3-go-unit-tests> 2026/08/27 09:40:53 WARN Found objects in DB but missing from S3, will re-upload count=1
niks3-go-unit-tests> --- PASS: TestService_verifyS3Integrity (4.29s)
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Starting cleanup of old closures method=DELETE path=/api/closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Aborted multipart uploads count=0
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Garbage collection completed failed-uploads-deleted=0 old-closures-deleted=1 objects-marked-for-deletion=2 objects-deleted-after-grace-period=0 objects-failed-to-delete=0
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Vacuumed table table=pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Vacuumed table table=pending_objects
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Vacuumed table table=multipart_uploads
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Vacuumed table table=closures
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Vacuumed table table=objects
niks3-go-unit-tests> 2026/08/27 09:40:53 INFO Received get closure request method=GET path=/api/closures/00000000000000000000000000000000
niks3-go-unit-tests> --- PASS: TestService_createPendingClosureHandler (4.40s)
niks3-go-unit-tests> 2026/08/27 09:40:54 WARN Request failed, retrying attempt=5 max_attempts=6 backoff=1.606366046s error="Get \"http://localhost:19999/api/cache-config\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/cache-config
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Garbage collection completed failed-uploads-deleted=0 old-closures-deleted=1 objects-marked-for-deletion=3 objects-deleted-after-grace-period=2001 objects-failed-to-delete=0
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=pending_objects
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=multipart_uploads
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=closures
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=objects
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Garbage collection completed failed-uploads-deleted=0 old-closures-deleted=1 objects-marked-for-deletion=3 objects-deleted-after-grace-period=2001 objects-failed-to-delete=0
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=pending_objects
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=multipart_uploads
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=closures
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Vacuumed table table=objects
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Garbage collection progress phase="" failed_uploads_deleted=0 old_closures_deleted=1 objects_marked=3 objects_deleted=2001 objects_failed=0
niks3-go-unit-tests> === NAME TestPinProtectsFromGC
niks3-go-unit-tests> client_integration_test.go:709: Pin successfully protected closure from garbage collection
niks3-go-unit-tests> --- PASS: TestPinProtectsFromGC (3.93s)
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Garbage collection progress phase="" failed_uploads_deleted=0 old_closures_deleted=1 objects_marked=3 objects_deleted=2001 objects_failed=0
niks3-go-unit-tests> === NAME TestClientIntegration
niks3-go-unit-tests> client_integration_test.go:303: Objects in database after GC:
niks3-go-unit-tests> client_integration_test.go:303: Successfully deleted all objects with GC --force
niks3-go-unit-tests> --- PASS: TestClientIntegration (4.41s)
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Received complete multipart upload request method=POST path=/api/multipart/complete
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Completed multipart upload object_key=nar/hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh0100000000000000000000.nar.zst upload_id=OGQ1OWJkYzQtM2VkMy00MjMzLTlkZjMtMzYzZDk5MGRmNWJhLjNhNGVmNmE0LTUyODgtNDhkNC05OTMwLTdkZDI3OWVlMzUwNXgxNzg3ODIzNjUyOTkzMDI3MjUy parts=12
niks3-go-unit-tests> 2026/08/27 09:40:55 INFO Received uploads request method=POST path=/api/pending_closures
niks3-go-unit-tests> --- PASS: TestCompletedNarNotReofferedAcrossClosures (6.04s)
niks3-go-unit-tests> 2026/08/27 09:40:56 WARN Failed to fetch cache config, uploading without size limit error="fetching cache config: sending request: request failed after retries: Get \"http://localhost:19999/api/cache-config\": dial tcp [::1]:19999: connect: connection refused"
niks3-go-unit-tests> 2026/08/27 09:40:56 WARN Request failed, retrying attempt=1 max_attempts=6 backoff=100ms error="Post \"http://localhost:19999/api/pending_closures\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:56 WARN Request failed, retrying attempt=2 max_attempts=6 backoff=218.364516ms error="Post \"http://localhost:19999/api/pending_closures\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/pending_closures
niks3-go-unit-tests> === NAME TestOrphanedObjectsGCStressTest
niks3-go-unit-tests> orphaned_objects_gc_test.go:425: Created 10 active closures, 5 to-delete closures, 20 orphaned chains
niks3-go-unit-tests> orphaned_objects_gc_test.go:446: Marked 210 objects for deletion
niks3-go-unit-tests> 2026/08/27 09:40:56 WARN Request failed, retrying attempt=3 max_attempts=6 backoff=413.304864ms error="Post \"http://localhost:19999/api/pending_closures\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/pending_closures
niks3-go-unit-tests> orphaned_objects_gc_test.go:509: Stress test completed successfully:
niks3-go-unit-tests> orphaned_objects_gc_test.go:510: - Active objects preserved: 20
niks3-go-unit-tests> orphaned_objects_gc_test.go:511: - Objects deleted: 210
niks3-go-unit-tests> orphaned_objects_gc_test.go:512: - Total GC'd: 210
niks3-go-unit-tests> --- PASS: TestOrphanedObjectsGCStressTest (4.70s)
niks3-go-unit-tests> 2026/08/27 09:40:56 WARN Request failed, retrying attempt=4 max_attempts=6 backoff=855.917938ms error="Post \"http://localhost:19999/api/pending_closures\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/pending_closures
niks3-go-unit-tests> 2026/08/27 09:40:57 WARN Rate limiter enabled after throttle name=s3-test rate=5
niks3-go-unit-tests> 2026/08/27 09:40:57 WARN S3 rate limit hit operation="complete multipart upload" error="Please reduce your request rate."
niks3-go-unit-tests> === NAME TestCompleteMultipartUploadHandler_RateLimitTriggersThrottle
niks3-go-unit-tests> throttle_test.go:213: Proxy stats: total=15, throttled=10, completeMultipart=10
niks3-go-unit-tests> throttle_test.go:215: Rate limiter: enabled=true, rate=5.00
niks3-go-unit-tests> --- PASS: TestCompleteMultipartUploadHandler_RateLimitTriggersThrottle (7.87s)
niks3-go-unit-tests> 2026/08/27 09:40:57 WARN Request failed, retrying attempt=5 max_attempts=6 backoff=1.586892665s error="Post \"http://localhost:19999/api/pending_closures\": dial tcp [::1]:19999: connect: connection refused" url=http://localhost:19999/api/pending_closures
niks3-go-unit-tests> --- PASS: TestClientErrorHandling (0.00s)
niks3-go-unit-tests> --- PASS: TestClientErrorHandling/InvalidStorePath (0.90s)
niks3-go-unit-tests> --- PASS: TestClientErrorHandling/InvalidAuthToken (0.48s)
niks3-go-unit-tests> --- PASS: TestClientErrorHandling/ServerNotAvailable (6.82s)
niks3-go-unit-tests> PASS
niks3-go-unit-tests> 2026-08-27 09:40:59.495 UTC [106] LOG: received smart shutdown request
niks3-go-unit-tests> 2026-08-27 09:40:59.499 UTC [106] LOG: background worker "logical replication launcher" (PID 116) exited with exit code 1
niks3-go-unit-tests> 2026-08-27 09:40:59.511 UTC [111] LOG: shutting down
niks3-go-unit-tests> 2026-08-27 09:40:59.512 UTC [111] LOG: checkpoint starting: shutdown immediate
niks3-go-unit-tests> 2026-08-27 09:41:01.671 UTC [111] LOG: checkpoint complete: wrote 12248 buffers (74.8%), wrote 3 SLRU buffers; 0 WAL file(s) added, 0 removed, 13 recycled; write=0.197 s, sync=1.954 s, total=2.160 s; sync files=15825, longest=0.012 s, average=0.001 s; distance=217977 kB, estimate=217977 kB; lsn=0/EC421F8, redo lsn=0/EC421F8
niks3-go-unit-tests> 2026-08-27 09:41:01.731 UTC [106] LOG: database system is shut down
niks3-go-unit-tests> Running OIDC tests...
niks3-go-unit-tests> === RUN TestGlobMatch
niks3-go-unit-tests> === PAUSE TestGlobMatch
niks3-go-unit-tests> === RUN TestAudienceForIssuer
niks3-go-unit-tests> === PAUSE TestAudienceForIssuer
niks3-go-unit-tests> === RUN TestValidateToken_ValidToken
niks3-go-unit-tests> === PAUSE TestValidateToken_ValidToken
niks3-go-unit-tests> === RUN TestValidateToken_WrongAudience
niks3-go-unit-tests> === PAUSE TestValidateToken_WrongAudience
niks3-go-unit-tests> === RUN TestValidateToken_Expired
niks3-go-unit-tests> === PAUSE TestValidateToken_Expired
niks3-go-unit-tests> === RUN TestValidateToken_BoundClaimsMismatch
niks3-go-unit-tests> === PAUSE TestValidateToken_BoundClaimsMismatch
niks3-go-unit-tests> === RUN TestValidateToken_BoundSubjectMismatch
niks3-go-unit-tests> === PAUSE TestValidateToken_BoundSubjectMismatch
niks3-go-unit-tests> === RUN TestValidateToken_MultipleProviders
niks3-go-unit-tests> === PAUSE TestValidateToken_MultipleProviders
niks3-go-unit-tests> === RUN TestValidateToken_NoMatchingProvider
niks3-go-unit-tests> === PAUSE TestValidateToken_NoMatchingProvider
niks3-go-unit-tests> === CONT TestGlobMatch
niks3-go-unit-tests> === RUN TestGlobMatch/foo_foo
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo_foo
niks3-go-unit-tests> === RUN TestGlobMatch/foo_bar
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo_bar
niks3-go-unit-tests> === RUN TestGlobMatch/*_
niks3-go-unit-tests> === PAUSE TestGlobMatch/*_
niks3-go-unit-tests> === RUN TestGlobMatch/*_anything
niks3-go-unit-tests> === PAUSE TestGlobMatch/*_anything
niks3-go-unit-tests> === RUN TestGlobMatch/foo*_foo
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo*_foo
niks3-go-unit-tests> === RUN TestGlobMatch/foo*_foobar
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo*_foobar
niks3-go-unit-tests> === CONT TestValidateToken_BoundClaimsMismatch
niks3-go-unit-tests> === CONT TestValidateToken_BoundSubjectMismatch
niks3-go-unit-tests> === CONT TestValidateToken_NoMatchingProvider
niks3-go-unit-tests> === CONT TestValidateToken_WrongAudience
niks3-go-unit-tests> === CONT TestValidateToken_Expired
niks3-go-unit-tests> === CONT TestValidateToken_ValidToken
niks3-go-unit-tests> === CONT TestAudienceForIssuer
niks3-go-unit-tests> === CONT TestValidateToken_MultipleProviders
niks3-go-unit-tests> === RUN TestGlobMatch/foo*_bar
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo*_bar
niks3-go-unit-tests> --- PASS: TestAudienceForIssuer (0.00s)
niks3-go-unit-tests> === RUN TestGlobMatch/*bar_bar
niks3-go-unit-tests> === PAUSE TestGlobMatch/*bar_bar
niks3-go-unit-tests> === RUN TestGlobMatch/*bar_foobar
niks3-go-unit-tests> === PAUSE TestGlobMatch/*bar_foobar
niks3-go-unit-tests> === RUN TestGlobMatch/*bar_foo
niks3-go-unit-tests> === PAUSE TestGlobMatch/*bar_foo
niks3-go-unit-tests> === RUN TestGlobMatch/foo*bar_foobar
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo*bar_foobar
niks3-go-unit-tests> === RUN TestGlobMatch/foo*bar_foo123bar
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo*bar_foo123bar
niks3-go-unit-tests> === RUN TestGlobMatch/foo*bar_foobarbaz
niks3-go-unit-tests> === PAUSE TestGlobMatch/foo*bar_foobarbaz
niks3-go-unit-tests> === RUN TestGlobMatch/*/*_foo/bar
niks3-go-unit-tests> === PAUSE TestGlobMatch/*/*_foo/bar
niks3-go-unit-tests> === RUN TestGlobMatch/*/*_foo
niks3-go-unit-tests> === PAUSE TestGlobMatch/*/*_foo
niks3-go-unit-tests> === RUN TestGlobMatch/refs/heads/*_refs/heads/main
niks3-go-unit-tests> === PAUSE TestGlobMatch/refs/heads/*_refs/heads/main
niks3-go-unit-tests> === RUN TestGlobMatch/refs/heads/*_refs/tags/v1.0
niks3-go-unit-tests> === PAUSE TestGlobMatch/refs/heads/*_refs/tags/v1.0
niks3-go-unit-tests> === RUN TestGlobMatch/refs/*/main_refs/heads/main
niks3-go-unit-tests> === PAUSE TestGlobMatch/refs/*/main_refs/heads/main
niks3-go-unit-tests> === RUN TestGlobMatch/fo?_foo
niks3-go-unit-tests> === PAUSE TestGlobMatch/fo?_foo
niks3-go-unit-tests> === RUN TestGlobMatch/fo?_fo
niks3-go-unit-tests> === PAUSE TestGlobMatch/fo?_fo
niks3-go-unit-tests> === RUN TestGlobMatch/fo?_fooo
niks3-go-unit-tests> === PAUSE TestGlobMatch/fo?_fooo
niks3-go-unit-tests> === RUN TestGlobMatch/?oo_foo
niks3-go-unit-tests> === PAUSE TestGlobMatch/?oo_foo
niks3-go-unit-tests> === RUN TestGlobMatch/?oo_boo
niks3-go-unit-tests> === PAUSE TestGlobMatch/?oo_boo
niks3-go-unit-tests> === RUN TestGlobMatch/repo:myorg/*:*_repo:myorg/myrepo:ref:refs/heads/main
niks3-go-unit-tests> === PAUSE TestGlobMatch/repo:myorg/*:*_repo:myorg/myrepo:ref:refs/heads/main
niks3-go-unit-tests> === RUN TestGlobMatch/repo:myorg/*:*_repo:otherorg/myrepo:ref:refs/heads/main
niks3-go-unit-tests> === PAUSE TestGlobMatch/repo:myorg/*:*_repo:otherorg/myrepo:ref:refs/heads/main
niks3-go-unit-tests> === CONT TestGlobMatch/foo_foo
niks3-go-unit-tests> === CONT TestGlobMatch/repo:myorg/*:*_repo:otherorg/myrepo:ref:refs/heads/main
niks3-go-unit-tests> === CONT TestGlobMatch/repo:myorg/*:*_repo:myorg/myrepo:ref:refs/heads/main
niks3-go-unit-tests> === CONT TestGlobMatch/?oo_boo
niks3-go-unit-tests> === CONT TestGlobMatch/?oo_foo
niks3-go-unit-tests> === CONT TestGlobMatch/fo?_fooo
niks3-go-unit-tests> === CONT TestGlobMatch/fo?_fo
niks3-go-unit-tests> === CONT TestGlobMatch/fo?_foo
niks3-go-unit-tests> === CONT TestGlobMatch/refs/*/main_refs/heads/main
niks3-go-unit-tests> === CONT TestGlobMatch/refs/heads/*_refs/tags/v1.0
niks3-go-unit-tests> === CONT TestGlobMatch/refs/heads/*_refs/heads/main
niks3-go-unit-tests> === CONT TestGlobMatch/*/*_foo
niks3-go-unit-tests> === CONT TestGlobMatch/*/*_foo/bar
niks3-go-unit-tests> === CONT TestGlobMatch/foo*bar_foobarbaz
niks3-go-unit-tests> === CONT TestGlobMatch/foo*bar_foo123bar
niks3-go-unit-tests> === CONT TestGlobMatch/foo*bar_foobar
niks3-go-unit-tests> === CONT TestGlobMatch/*bar_foo
niks3-go-unit-tests> === CONT TestGlobMatch/*bar_foobar
niks3-go-unit-tests> === CONT TestGlobMatch/*bar_bar
niks3-go-unit-tests> === CONT TestGlobMatch/foo*_bar
niks3-go-unit-tests> === CONT TestGlobMatch/foo*_foobar
niks3-go-unit-tests> === CONT TestGlobMatch/foo*_foo
niks3-go-unit-tests> === CONT TestGlobMatch/*_anything
niks3-go-unit-tests> === CONT TestGlobMatch/*_
niks3-go-unit-tests> === CONT TestGlobMatch/foo_bar
niks3-go-unit-tests> --- PASS: TestGlobMatch (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo_foo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/repo:myorg/*:*_repo:otherorg/myrepo:ref:refs/heads/main (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/repo:myorg/*:*_repo:myorg/myrepo:ref:refs/heads/main (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/?oo_boo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/?oo_foo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/fo?_fooo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/fo?_fo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/fo?_foo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/refs/*/main_refs/heads/main (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/refs/heads/*_refs/tags/v1.0 (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/refs/heads/*_refs/heads/main (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/*/*_foo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/*/*_foo/bar (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo*bar_foobarbaz (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo*bar_foo123bar (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo*bar_foobar (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/*bar_foo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/*bar_foobar (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/*bar_bar (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo*_bar (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo*_foobar (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo*_foo (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/*_anything (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/*_ (0.00s)
niks3-go-unit-tests> --- PASS: TestGlobMatch/foo_bar (0.00s)
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=test
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=provider1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=test
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=provider1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=test
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=test
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=test
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO OIDC provider initialized name=provider2
niks3-go-unit-tests> --- PASS: TestValidateToken_ValidToken (0.01s)
niks3-go-unit-tests> --- PASS: TestValidateToken_WrongAudience (0.01s)
niks3-go-unit-tests> --- PASS: TestValidateToken_Expired (0.01s)
niks3-go-unit-tests> --- PASS: TestValidateToken_BoundClaimsMismatch (0.01s)
niks3-go-unit-tests> --- PASS: TestValidateToken_NoMatchingProvider (0.01s)
niks3-go-unit-tests> --- PASS: TestValidateToken_MultipleProviders (0.01s)
niks3-go-unit-tests> --- PASS: TestValidateToken_BoundSubjectMismatch (0.01s)
niks3-go-unit-tests> PASS
niks3-go-unit-tests> Running hook tests...
niks3-go-unit-tests> === RUN TestSendPathsEmpty
niks3-go-unit-tests> === PAUSE TestSendPathsEmpty
niks3-go-unit-tests> === RUN TestQueueEnqueueAndFetch
niks3-go-unit-tests> === PAUSE TestQueueEnqueueAndFetch
niks3-go-unit-tests> === RUN TestQueueDeduplication
niks3-go-unit-tests> === PAUSE TestQueueDeduplication
niks3-go-unit-tests> === RUN TestQueueRemove
niks3-go-unit-tests> === PAUSE TestQueueRemove
niks3-go-unit-tests> === RUN TestQueueFetchBatchLimit
niks3-go-unit-tests> === PAUSE TestQueueFetchBatchLimit
niks3-go-unit-tests> === RUN TestQueueRetryMovesToBack
niks3-go-unit-tests> === PAUSE TestQueueRetryMovesToBack
niks3-go-unit-tests> === RUN TestQueueFetchRemoveLifecycle
niks3-go-unit-tests> === PAUSE TestQueueFetchRemoveLifecycle
niks3-go-unit-tests> === RUN TestQueueConcurrentWriters
niks3-go-unit-tests> === PAUSE TestQueueConcurrentWriters
niks3-go-unit-tests> === RUN TestQueueRemoveLargeClosure
niks3-go-unit-tests> === PAUSE TestQueueRemoveLargeClosure
niks3-go-unit-tests> === RUN TestServerClientIntegration
niks3-go-unit-tests> === PAUSE TestServerClientIntegration
niks3-go-unit-tests> === RUN TestServerQueueError
niks3-go-unit-tests> === PAUSE TestServerQueueError
niks3-go-unit-tests> === RUN TestGetListenerSocketActivation
niks3-go-unit-tests> server_test.go:210: === RUN TestGetListenerSocketActivation
niks3-go-unit-tests> --- PASS: TestGetListenerSocketActivation (0.00s)
niks3-go-unit-tests> PASS
niks3-go-unit-tests>
niks3-go-unit-tests> --- PASS: TestGetListenerSocketActivation (0.00s)
niks3-go-unit-tests> === RUN TestDrainIsolatesPoisonPath
niks3-go-unit-tests> === PAUSE TestDrainIsolatesPoisonPath
niks3-go-unit-tests> === RUN TestRunNotBlockedByPoisonHead
niks3-go-unit-tests> === PAUSE TestRunNotBlockedByPoisonHead
niks3-go-unit-tests> === RUN TestDrainGivesUpWhenServerDown
niks3-go-unit-tests> === PAUSE TestDrainGivesUpWhenServerDown
niks3-go-unit-tests> === RUN TestFailedPathPrunedByLaterClosure
niks3-go-unit-tests> === PAUSE TestFailedPathPrunedByLaterClosure
niks3-go-unit-tests> === RUN TestWorkerUploadsAndRemoves
niks3-go-unit-tests> === PAUSE TestWorkerUploadsAndRemoves
niks3-go-unit-tests> === RUN TestWorkerSkipsGCdPaths
niks3-go-unit-tests> === PAUSE TestWorkerSkipsGCdPaths
niks3-go-unit-tests> === RUN TestWorkerPrunesClosureDeps
niks3-go-unit-tests> === PAUSE TestWorkerPrunesClosureDeps
niks3-go-unit-tests> === CONT TestSendPathsEmpty
niks3-go-unit-tests> === CONT TestRunNotBlockedByPoisonHead
niks3-go-unit-tests> === CONT TestQueueRemoveLargeClosure
niks3-go-unit-tests> === CONT TestServerQueueError
niks3-go-unit-tests> --- PASS: TestSendPathsEmpty (0.00s)
niks3-go-unit-tests> === CONT TestWorkerPrunesClosureDeps
niks3-go-unit-tests> === CONT TestWorkerSkipsGCdPaths
niks3-go-unit-tests> === CONT TestWorkerUploadsAndRemoves
niks3-go-unit-tests> === CONT TestQueueConcurrentWriters
niks3-go-unit-tests> === CONT TestQueueFetchRemoveLifecycle
niks3-go-unit-tests> === CONT TestQueueRetryMovesToBack
niks3-go-unit-tests> === CONT TestQueueFetchBatchLimit
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Failed to queue paths error="permission denied" count=1
niks3-go-unit-tests> === CONT TestQueueRemove
niks3-go-unit-tests> === CONT TestQueueDeduplication
niks3-go-unit-tests> === CONT TestQueueEnqueueAndFetch
niks3-go-unit-tests> === CONT TestDrainIsolatesPoisonPath
niks3-go-unit-tests> === CONT TestServerClientIntegration
niks3-go-unit-tests> === CONT TestFailedPathPrunedByLaterClosure
niks3-go-unit-tests> === CONT TestDrainGivesUpWhenServerDown
niks3-go-unit-tests> --- PASS: TestServerQueueError (0.00s)
niks3-go-unit-tests> --- PASS: TestServerClientIntegration (0.00s)
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=4
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=4
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed, will retry later error="upload failed" path=/build/TestDrainIsolatesPoisonPath2083791931/002/bbb
niks3-go-unit-tests> --- PASS: TestQueueRetryMovesToBack (0.02s)
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Upload queue status pending=2
niks3-go-unit-tests> 2026/08/27 09:41:02 WARN Store path no longer exists (garbage collected?), removing from queue path=/build/TestWorkerSkipsGCdPaths568543133/002/nonexistent
niks3-go-unit-tests> --- PASS: TestQueueFetchBatchLimit (0.03s)
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Upload queue status pending=3
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> --- PASS: TestQueueRemove (0.03s)
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=2
niks3-go-unit-tests> --- PASS: TestQueueDeduplication (0.03s)
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=2
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed, will retry later error="upload failed" path=/build/TestDrainGivesUpWhenServerDown2500460722/002/a
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Upload queue status pending=2
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Upload queue status pending=2
niks3-go-unit-tests> --- PASS: TestFailedPathPrunedByLaterClosure (0.03s)
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=2
niks3-go-unit-tests> --- PASS: TestQueueEnqueueAndFetch (0.03s)
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed, will retry later error="upload failed" path=/build/TestDrainGivesUpWhenServerDown2500460722/002/b
niks3-go-unit-tests> --- PASS: TestQueueFetchRemoveLifecycle (0.03s)
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=2
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=2
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed, will retry later error="upload failed" path=/build/TestDrainGivesUpWhenServerDown2500460722/002/c
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed, will retry later error="upload failed" path=/build/TestDrainGivesUpWhenServerDown2500460722/002/d
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:02 INFO Uploading batch count=2
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Drain finished with paths left in queue remaining=1
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed error="upload failed" count=2
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed, will retry later error="upload failed" path=/build/TestDrainGivesUpWhenServerDown2500460722/002/e
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Upload failed, will retry later error="upload failed" path=/build/TestDrainGivesUpWhenServerDown2500460722/002/f
niks3-go-unit-tests> 2026/08/27 09:41:02 ERROR Drain finished with paths left in queue remaining=10
niks3-go-unit-tests> --- PASS: TestDrainIsolatesPoisonPath (0.03s)
niks3-go-unit-tests> --- PASS: TestDrainGivesUpWhenServerDown (0.03s)
niks3-go-unit-tests> --- PASS: TestWorkerSkipsGCdPaths (0.05s)
niks3-go-unit-tests> --- PASS: TestWorkerUploadsAndRemoves (0.05s)
niks3-go-unit-tests> --- PASS: TestWorkerPrunesClosureDeps (0.05s)
niks3-go-unit-tests> --- PASS: TestQueueRemoveLargeClosure (0.18s)
niks3-go-unit-tests> --- PASS: TestQueueConcurrentWriters (0.48s)
niks3-go-unit-tests> 2026/08/27 09:41:03 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 INFO Uploading batch count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 ERROR Upload failed error="upload failed" count=1
niks3-go-unit-tests> 2026/08/27 09:41:03 ERROR Drain finished with paths left in queue remaining=1
niks3-go-unit-tests> --- PASS: TestRunNotBlockedByPoisonHead (1.06s)
niks3-go-unit-tests> PASS
post-build step Upload coverage to codecov: ok
Skipping codecov: project=Mic92/niks3 attr=checks.aarch64-linux.go-unit-tests